what the statement que node missing form es6 enable javascript console strict-mode

javascript - statement - use the function form of use strict



Posible habilitar el "modo estricto"; ¿En la consola de FireBug y Chrome? (4)

Con esta página:

<!DOCTYPE html> <html> <head> <script> "use strict"; var foo = 2; delete foo; </script> </head> <body></body> </html>

La consola Firebug da:

applying the ''delete'' operator to an unqualified name is deprecated >>> foo ReferenceError: foo is not defined foo

Pero entonces esto es exitoso:

>>> var bar = 2; undefined >>> delete bar; true

Incluso si usted comenta, delete foo; para que la secuencia de comandos no se rompa, la eliminación de la bar sigue siendo exitosa a pesar del hecho de que "es una propiedad de un objeto global, ya que se crea a través de la declaración de variable y por lo tanto tiene el atributo DontDelete ":

>>> foo 2 >>> delete foo false >>> var bar = 2; undefined >>> delete bar true

¿Es posible habilitar el "modo estricto"? ¿En FireBug o en la consola de Chrome?


En Chrome, vaya a "chrome: // flags", luego "Enable Experimental JavaScript". Relanzar.


La consola Firebug funciona envolviendo todo el código en una llamada "eval", por lo que la primera declaración en su script ya no es "uso estricto"; por lo tanto, está deshabilitada. Puede intentar envolver su código en una función para imponer el "uso estricto" de esa función en particular, pero la mejor solución que conozco es omitir la consola y probar directamente en la página.


Si solo está probando una sola función en la consola, también puede poner ''use strict'' como la primera línea en la declaración de la función.


use shift + enter para ingresar ''use strict''

Me gusta esto