Portando código para scripts do modo de padrões ES5
O modo de padrões ES5 detecta erros permitidos pelo modo de compatibilidade.
Pontos a serem observados ao portar o código de scripts existentes para novos scripts com escopo usando o modo de padrões ES5.
O ECMAScript5 avalia o termo novo Booliano (falso) como verdadeiro. No modo de compatibilidade, foi avaliado como falso.
O ECMAScript5 gera um EcmaError quando uma propriedade inexistente é referenciada. No modo de compatibilidade, nenhum erro foi gerado.
O ECMAScript5 gera um EcmaError quando uma função inexistente é chamada. No modo de compatibilidade, nenhum erro foi gerado.
ECMAScript5 manipula corretamente novas linhas. No passado, um caractere de nova linha após um comentário era reconhecido, o que está errado. Neste exemplo, no modo de compatibilidade, todas as três funções são chamadas. No ECMAScript5, somente a primeira função é chamada.
var expr = doFoo(); // do foo
doBar(); // do bar
finish(); // all done
eval(expr);
O ECMAScript5 lida corretamente com o incremento e o decréscimo de postfix. Neste exemplo, no modo de compatibilidade, a variável x obtém o valor incrementado, o que está incorreto.
var x = gr.limit++;