global-strict

在全局范围内要求或禁止严格模式指令。

(已删除)此规则在 ESLint v1.0 中已删除,并由 严格 规则替换。新规则中的 "global" 选项与删除的规则最相似。

通过在代码中使用以下编译指示启用严格模式:

"use strict";

当全局使用时,如本例所示,严格模式杂注适用于单个文件中的所有代码。如果在将脚本提供给浏览器之前将它们连接在一起,这可能会很危险。例如,如果您有一个在严格模式下运行的文件并将该文件与 jQuery 连接,那么严格模式现在也适用于 jQuery,并且可能会导致错误。

但是,如果您使用的是 Node.js,您可能希望全局开启严格模式。在 Node.js 项目中,文件通常不会串联在一起,因此意外应用严格模式的风险很小。此外,由于 Node.js 中的每个文件都有自己的范围,全局严格模式只影响放置它的单个文件。

规则详情

4RwUF+kjQs6ZceEO8HjkfF2PlIOinbnoChzuXmgSEe3hbEZfT5TV+EOjXndEqMEPSN8EsGYsq4PysQc5l3weQw0CbXU+jr3euUAa1v6zHIy/WsIgd+HaK12k9swplP3rMUMUuS5kwz1aGjDERdankw==

jqUxgDKtC/15NCHN7fs2iC1qjNb4vdBOY1wL8Y8EwphON5HCvdG8dIo/qyUtiT+PJFgEAxvydeJ1dhK2TIK64jXn6CrOOrAXHN5JuHmzEzUMbg8KB1tOazESTpERK6qAfmd44Ua9U92yzAxo73lhpFTMUeoMJIKyJ9IJdoe1reRfaoqefgI4rZ+8TbuF30tv/Hu2G12iNY8IE+ibhp0WFQ==

"use strict";

function foo() {
    return true;
}

Jg4wD5RepuxWwBic243ZqzdFBnb1BWdwmJAiKh534V9xRMUE4DpWno6NRvTWvKT4T+aW/F7cYCm76jPogVMYWXz6g1YnNWtdro1tPdbgGbnS+H3zxazyK3OfaX4AxJPDWbcgsEvjYsLNlSABV65qVF0PPIQ3D1FNAUJEoFvnRsWCTRa+jXds4wxbL3FSMSsu

function foo() {
    "use strict";

    return true;
}

(function() {
    "use strict";

    // other code
}());

选项

"global-strict": ["error", "always"]

6wgIuq1Wn8n9Q8FHk/jhh+K+Hb2S5kD/VEkVMKpp/y6EZCYEf5F4WPhCgEN+1dKXO8AUFMAWkwoIDnI43wARTAe5KfKrWkvu3DJxM+IluTU=

"global-strict": ["error", "never"]

wB/WIOFYsf2LagATYWPq4WbJBG8FcClJkSp4GjiJLHZ6ELQKdPKc5L3dEu6uoCjGPCJH5k+LVw5TZwSZar5nW9q5XM7ihlbo8Ju1c8Mxa1nS7Q/GNymufGvVgQBIU8DE3tF9//ZFvvlD+gAr5IMhg0UOszE8IpNfgrHEaVZ+8UQ=

何时不使用

wAYk+QzalCsUuCNMHTDvJXprIeLQPgyzgRSiv5WvxQgmb35kxjesc6a9koLy8VxJZ2XFc5F/j00Ear8i0MtdRMxUKv1x9TuglHnGiDX7/L9bVM3JHTRA4xNKp2IYjdwX+l53ZDAKL5vuatMUt2dWcHr4VdBlknI5k48udbEPRs/F5+zvEMcztJqNEfhZxp0T8yqPDi7lbfndEjgdvAwgVkfzk3DXYvx/1YfsLDt6oNauZOnu0+du7PqSoRG3YyaX