Javascript 是不是;使用“严格的”;在ES6中仍然以同样的方式工作?

Javascript 是不是;使用“严格的”;在ES6中仍然以同样的方式工作?,javascript,ecmascript-6,scope,use-strict,Javascript,Ecmascript 6,Scope,Use Strict,我读到一个答案,“使用严格”有助于限制对全局变量的访问并抛出不必要的异常。但我只是碰巧想知道,“严格使用”在ES6中是否仍然流行?或者,现在是否有其他(更好的)方法来实现其功能?在大多数情况下,它的工作原理是相同的,即使使用ES6功能,代码顶部仍然需要“use strict”字符串才能进入严格模式。例如,如果代码将由浏览器执行,则浏览器不会以严格模式计算代码,除非您在代码顶部使用该字符串 唯一的两个例外是自动使用严格模式的ES6模块和ES6类,其中类体中的任何代码都是在严格模式下执行的 您可以在

我读到一个答案,“使用严格”有助于限制对全局变量的访问并抛出不必要的异常。但我只是碰巧想知道,“严格使用”在ES6中是否仍然流行?或者,现在是否有其他(更好的)方法来实现其功能?

在大多数情况下,它的工作原理是相同的,即使使用ES6功能,代码顶部仍然需要“use strict”字符串才能进入严格模式。例如,如果代码将由浏览器执行,则浏览器不会以严格模式计算代码,除非您在代码顶部使用该字符串

唯一的两个例外是自动使用严格模式的ES6模块和ES6类,其中类体中的任何代码都是在严格模式下执行的


您可以在此处找到更多详细信息,

严格模式非常相关,并在一些新语法功能的环境中自动设置,如
class
。这种行为-“为某些环境自动设置”对Es6来说是新的吗?或者仅仅是从JS5继承过来的?它是ES6中引入的
class
等特性的新特性。在
类中定义的方法中的代码以严格模式执行。ES6模块自动严格,但本机模块支持仍然很少。