use-strict - jslint vs eslint - JavaScript中的 "使用严格 "有什么作用,背后的原因是什么?

Jslint GitHub / javascript / syntax / jslint

最近,我通过Crockford的JSLint运行了一些JavaScript代码,并给出了以下错误:

Mark Rogers



Answer #1
for (i of [1,2,3]) console.log(i)
    
// 输出:
// 1
// 2
// 3
'use strict';
for (i of [1,2,3]) console.log(i)

// 输出:
//未捕获的ReferenceError:未定义
String.prototype.test = function () {
  console.log(typeof this === 'string');
};

'a'.test();

// 输出
// 错误的
String.prototype.test = function () {
  'use strict';
  
  console.log(typeof this === 'string');
};

'a'.test();

// 输出
// 真的