JavaScript(ECMAScript5)严格模式是否具有显着的性能优势,值得广泛使用?

Phi*_*ler 12 javascript ecmascript-5

我正在阅读使用Strict Mode for JavaScript的一些内容,似乎一般来说,我们的想法是在编码器上强制使用一组更严格的规则,以确保JS引擎能够更好地优化代码.它几乎就像Visual Basic中的"Option Explicit"的JavaScript等价物.

如果这基本上是将严格模式应用于我的代码的净效果,那么性能差异是否值得用于习惯而不是逐案?除了代码稳定性之外还有其他优势可能值得考虑吗?

我想要将严格模式应用于我的脚本的一些主要原因是什么?

CMS*_*CMS 6

那么,严格的模式代码当然可以更好地执行,因为它消除了使优化更加困难的问题,例如,从我的头脑中:

  • with声明被删除(真的很难-如果不是impossible-优化).
  • 不再有未宣布的任务和其他禁令,例如(delete varName;)
  • eval 不会将变量/函数声明引入本地范围.
  • arguments.callee被删除,(难以优化(例如函数内联))
  • arguments名为properties 的对象索引不再动态映射到命名的形式参数.