strict

要求或禁止严格模式指令

一些该规则报告的问题可以通过 --fix 命令行选项 自动修复

严格模式指令是脚本或函数体开头的 "use strict" 字面。它启用严格模式语义。

当指令出现在全局范围内时,严格模式适用于整个脚本:

"use strict";

// strict mode

function foo() {
    // strict mode
}

当指令出现在函数体的开头时,严格模式仅适用于该函数,包括所有包含的函数:

function foo() {
    "use strict";
    // strict mode
}

function foo2() {
    // not strict mode
};

(function() {
    "use strict";
    function bar() {
        // strict mode
    }
}());

EbSYInlem385jyQXmvkOsysHKXJhTyQyLDRpk2biMGCI+BfzRxuQb1wFSjiOlV22cUGMS7bUY2HncujWBO5fmyyb3egCjfo5hLp0REhs6gsaXC6H0WFDYfZXRZu7aH/SZn20LXIyxsdBJTLC4TO7XUJ7ddz/G5Hpzt+J/IbZx2g=

OCQ3iR25s6K7G20c969FWwYbfy2/aZh40Fm4DzHPFvMGQxoj66dcpgXGX5AnUIxK59yLs7N9r4wAtTTnykS5hrR2O5NGaazTraOBS6m7iSBRsotf2Nl1dpxy5B+JH9Lh

规则详情

iaDZS5R9bOIvnAMBvIu0DZWfnzk9CSTR23c5as5iVpW843pugwqo4AENv3F0mhv6

/XwrxHBE04dsIpt5qyioCHGzxYJgXSuV7IZg+oaROiXc5WAJUBL3Y5PEp+rE6cVCsYQKsuHbAFwB5DbUTyp3KrzqxlzZuYFAin8wdtWaPJTJuimH8PTc3r7KNT+s2wFdXjR8N0aM9SLogDCTV3PMH2vjVYeJZeHhhv5x29jtnf4nZht1QYOJY8iQ1wGHIY3GM2o7+ZxLHUUWDNzywRMO2rj7UHUWeczqaCNQ2fQKGe7krKSgpAg2yIyjmhQVyh9V

    ltfdY44Ti2AmQt0LAQhEtT28DYIOZbIiOAuy1Z5z3nl2QUaxTCtiT5vxva9ABbYGNXkoLTAsLfmXfy3Hy+lnqH1CehQNTc6YxokRKtx6KAEgg5VQhWdmkoU9Q4UJK8ZpROjlDOyB2ZMLv5Je+UEciO9N7sxHjv8bJBQfoqNhFHQnI8hL4BaRs/1Mf4T/Zd2A2THdjYwUnL0KenxcBKM14EzRQQ2fDHfHg5abExH1WKM=

0utejeuDqn/yDyzV14U7wwp7O+1FWEQSDS5Esrp3W0+i5A9E8a8EJJkpzUkNXh9+o9BlT4zCruUo5xFNvuzkCXmna+UNt6nCU6+JsmYpeBXFiP2KJjd+oaKDe6UKPoOu4d/dTXRoWwRNkps44qiBnB4Y0FA9i6K5TWZltl1fQ746RgAAsXKbYgfvYvtF4Fxxt4MxFz1iD3sL3/jGdmONT+6utIGI6q7Eh3Gsw4BAq/wAt/OkV6docZuKN+B2P07K/XczHT3gPcLdDteh/RkvEz/U7AnIblfVhJTRgYkZ2BBYtTsE7rcfwSKDZZcvVPq3Y+CuibJn0m0cBgzNxZPC38NjFXE9zjqsYJY84TaardL8T4lAqx2kIaa9c4I/vgd/fKH5NsNjCcyhJzOYRVGmKx1X/D7+LOuPQpyjQNTAZcI=

0utejeuDqn/yDyzV14U7wwp7O+1FWEQSDS5Esrp3W0/3BHsWMjEsQIorRWK1Ysicp+xzqZ52p+RfCjI60KFX2XV/N75xpDUHXV3ULDKyRH6U68M0RzBQk4boyijGbde7thPz2zf4WVUYYZHlvs4cI9njK+/hNmkV6Q0FNkgX5SXwHbGc2tFVdhfEiB0yFdRmzS2/E/Gdkoh+/fhdiVlm4R2n0sGVydsifYB6p9lyfVqpaWxuMY5VY8aoMijMzvSpRHgeIsLRCvefc1zTYkqANsh74tRhLCwPT1jwWsGw2WoBh7TbscWT0udkLarvg5TF6KHxrcTROGsb1CWaStdxxz0JUCcT/FkoqCCQ//AVRXg=

BcBcZJ9SM12xtzyUI0srkVcSpwqZsFF7+FL/eLc1wtp32RssecjuRxVaGjMFDYqXIoAhIB7Yiqp0XLtA41H9JbcpfqITaF96r+gZ8bIPEdLANZVRZ2zMg1IgV3gELfBhILN4qI8HK6iBse7QVeABUG6vauXVLjtZssVswsQ9BxbzwmTU/fLD42F3OHCInoPO

选项

SgZ3dA2jSloiX3wDR5yH9Mon0ynS4TeVmhtFa3RDGRNBNOE9+aJRPPcsRuyI8MAB

    F/9BjyBliUGUkN8TWnBY0anlwgK1ZkCwHbD/lXJWvoXUplL+6dlroOhCRhuFV6ZT2hQ+DQrDLwWey+UYPLYb2Ft/xtSxoDhcWhiyV/xMm2m1r74zaGWNE5hGwetMDTZ0SLEN0bz00ZOAgrI7UPROZjT7pHj8MnY9anRf/VYIIavN3GlYpmVrTsQeFkP/PyMGFg0uw2E/z6qN046TCasuhj2U8VofoZBPQB8jr1tDMbPOjlXp6brM3+rdh+Vw3EX6BSULN0h9BEOwrfTk4hddtFk/QMHlQrw1UmyMr49E0czUl3twrCwyQLHpxPoldz85I0emnI3YDnOp1+XYwlByFHIxi6uvqUoM7zyVSq7vTDzmkP4VufMak1Vc/T0ZC3muNi1Mp8X7NDXXvcTVyXGX/qsJ5IQOI6TzOLzyF9+bouSRa0irHGU770vt5euJLNmVA8GxfyyRT4Zv40hNcFdK1w2dyDdf2QnTDFNhm4sbg2sd+narC5YXBeDZMekSxS4xx6Bn73ITUop1zlQd4akg3tGQ2D7UcZqw6oydVXkGHVIsBETB/7bf1Pe/ZPQyu5XaA/HKsn9YSGj82yUk+BCLA5PfhrOaVavj5aawdC5M6LYYPrp+uql2lN6Esw4hTpzyuX12kRKCK6tv2yOgn7DjcikrK8ZXOFvZywE/vmojgrefxdNwnNMmBbiS8qezApDnybxvSnG3IkMRFuxI4oFI2oxqpLJRNTOAcTXlBtIKjkA=

safe

lY5+6XESiEP0N1PQwUNgoHiPioQ/Dos9E6bE8VFx5NqpMPlGjp4LNRjI7C0kZyoveiZuagLYKz6tEH3WVxQue/RAXov0KubhrxQgyRxlN5uErc7NiHoO+3RGNcb+DqY00gdk11bUkci0ReRmu5/I+aYxPS4THkq8S8uu6rVvKB1mVo0vj8TdHiTJyfQ/qIh5yfnVh2i/6VU5HJJeyZpPxMCi1/eo+/4oQo0odxHpdaw=

    +RzMd3RY7ii+PeMCLo6geNsNKLX0ty3Q49MJX5AXhDCoMoUg5LrVsc+dFmEqlwzNw6SID9pRm83Bd/dhJ0pQRWTL5nE/3onvVhooMxEEI5SNZmpyxd7EyDXMlB7xNBExtbqRW3j3YZGITSTQYxB8kw/hChlcwUb/PLBSyf6qOOLcvgt/PaszZPjCEalNAm2Ixuz12HxxxlJYy9gJzVXpaMGw5eRJ3uwRryRa51AAYzGWDyGFTRKAr0soDkmr2vtdVl1Su/+0o5V+Mqx7/MHDPLdoqGlBSN94gVCYF+PK8wqcnsK4F6GSkxoNwV56ieW+u7TZ/lT6Ndnf++8DOaC8fcFmyNN7aM1wYOZ+uw5g83M=

/DcSV3up/jsfIbxfQbZ5T6iLXo8DA3PmVP0gU8YNRil9aD54sOV9QB5+K2WOFq4NjWsOAY7T3FL+2cR+L3AGmt0p8zrUcMv/Cd6dsTlj7BhC82Wt1/K0Fu8bU3Dh/ZjpAoVL7jsgC5f1fIVjmiDX0Qx02uz7BnYq6K+j9KUfSUbFysH4eS9MyaT/+TzAXDBZSCv8k7MZAJe3X8vRL0jkCrdbnF5bsTJwZzJS7Dg2P9BY+wvbvClNM/6L8p/2Oh3INYgRofzj3ttdTTXcuPcnd/PuyJYjDX5cHfOmWEQtEZo7h1QLkmKrmr7K0zM6zjabuekNz596ayOOag8lG5usnHXBsPboACbzMOQ4r8NCMmc=

global

gzlG8jANWr4Hhb4/2Xwr93AV5aaymojmMJ3AJlmf0V5Y2+y0oZCykbs8aS+je0v/WfhYhByiOKVLSR2Y+NrAJuhzEmUqujukf1S2WYUfIxI=

/*eslint strict: ["error", "global"]*/

function foo() {
}
/*eslint strict: ["error", "global"]*/

function foo() {
    "use strict";
}
/*eslint strict: ["error", "global"]*/

"use strict";

function foo() {
    "use strict";
}

gzlG8jANWr4Hhb4/2Xwr93AV5aaymojmMJ3AJlmf0V67pyH4HiiPwDLoE2Ze/S9NASiMRyTSAiavUUXb4hvhUqOIBhZ2yr2clN6BDmnka6Y=

/*eslint strict: ["error", "global"]*/

"use strict";

function foo() {
}

function

Aoi33z8Jys++TWj/jR7PpgLXP2Z89WsO/6LUsJqbyw5YBKEJRCr+q5Xe1+jUi5cjR4OAQ5hFkLZtp1tGxA91L1VK7M8FlfdODnvkqrZAqFZ03yyp1Vi3blJUQ9tgKuAUYkNolzb2LfrduMI91445PBfmNAYwiLN8PUVuM4JvV/7rFbqHs60ZRHXEHdNf0j+lxFGWI0RIW8+OSKXBxwvLmkZk2grAz9dHB/QaH/a1OqajIUSlNFYYhinUdZ8/G3jymDf8w7Nn0W7Er70OlZW5O0u3H7r4z52vFDVT/D0Q+3IjunZy7xtMcCer5Xz2q+FqSfGc2AV1hOkrCYXC3peGEozsVagQuw9djcOJK/DMgwfJ33wUbdBr0OMGy5IwRp7FKcU81zrr1VWnKrAHr8JZrw==

gzlG8jANWr4Hhb4/2Xwr9xjD5HuwjyDjekIwcCI2MSkqNTFBjObhoLlvBMPP1eS3ecRvpvkyMGsSQTIay55+Huk4bzxLuxazPEHN78XSHTo=

/*eslint strict: ["error", "function"]*/

"use strict";

function foo() {
}
/*eslint strict: ["error", "function"]*/

function foo() {
}

(function() {
    function bar() {
        "use strict";
    }
}());
/*eslint strict: ["error", "function"]*/
/*eslint-env es6*/

// Illegal "use strict" directive in function with non-simple parameter list.
// This is a syntax error since ES2016.
function foo(a = 1) {
    "use strict";
}

// We cannot write "use strict" directive in this function.
// So we have to wrap this function with a function with "use strict" directive.
function foo(a = 1) {
}

gzlG8jANWr4Hhb4/2Xwr9xjD5HuwjyDjekIwcCI2MSkqNTFBjObhoLlvBMPP1eS3YrkH52itjuVno3g9hbeZurYZFDOv3C70CATdAvpWAhE=

/*eslint strict: ["error", "function"]*/

function foo() {
    "use strict";
}

(function() {
    "use strict";

    function bar() {
    }

    function baz(a = 1) {
    }
}());

var foo = (function() {
    "use strict";

    return function foo(a = 1) {
    };
}());

never

gzlG8jANWr4Hhb4/2Xwr99gbBBt/zgYd+m2LbPq2shzHTFvrMOHWOiytSQtiLMXa/UFIRIIbHSYcSNm7+e8qUmh0GAjf7D5//ubHqz4Nylc=

/*eslint strict: ["error", "never"]*/

"use strict";

function foo() {
}
/*eslint strict: ["error", "never"]*/

function foo() {
    "use strict";
}

gzlG8jANWr4Hhb4/2Xwr99gbBBt/zgYd+m2LbPq2shyZdwfAqDk8uTXhhtqGVwZlAPG1lBRo9fKx66Cs9hQbQdE2eBYRtyQb5nrNlHWyQzM=

/*eslint strict: ["error", "never"]*/

function foo() {
}

earlier default(已移除)

rFX3Ryydmd70FWsIaE4Hrq/jQDXmeniJeblsmzRx+e4trfrGwRphAZM4Q2mAsP91WGl0dpT9UCu3WOvNpEUldWHEPDJlQAxyrq1U6o+th9p1VRD/W+pUugmXoGd7wZBK/7WCFa0ncymXf6iN+MiYTWjk1UqPHfFNoWGnIfXDEYN5cqMPHjbaH7qeYvHITurlA+Qgjgh0NWXdKLIezmpwbPKfRQgm369js2VmH61G/0Y=

Aoi33z8Jys++TWj/jR7Ppt+MoFldpGmSMl0MJZqYE2/xlpDylBT9i+8IQnTWkFjtrFJe8/KZlJd40qxBUakTknsgXyTeA6Bgq/0okCWEnHCC34+8pRvkSco/mawSmggMrD4p722f4O0UTNdAzre4Ff8fZxfPELOQAtwEKt1KOCS4ntXOBn33wbgpWli7l9NYTnfYpJFu21BYTlgX3K+DiMXnjizuPFePbsgu4ZmyyG0AVCoM6T3Y+0oJiSeAQUaNhRw+tbn/w+i5w04AUqKaehZJ4laoBD4WX3iUiI2eE1Uvp+yrFacHBSPaC1ZWooHM9v0rB9GzFbOb6CfPGtYRj08xyHC/JfZOjyI/x9kXtgT6NOpNshRa4Wcm21xT425o

jvkUkhkS7HSb+ijdsHFfDj+eTHChwZIJiUsC/sTetlI7aK5nMSSUQTIPviLalKVshf5vWdVW10tD6y3+f2IyITRi2ggP7DO5TcoI1lvnUrw=

// "strict": "error"

function foo() {
}
// "strict": "error"

(function() {
    function bar() {
        "use strict";
    }
}());

3vRURIMaWDsQZ7e/enlM+JC2/SIKv9fsDPfP++8HBO4+3QwQGPsy6Kl41symDbUnQmO4yZD28bw0pHMUI7XdkRxBuUR4f5Tzr1/rqz/9ukU=

// "strict": "error"

"use strict";

function foo() {
}
// "strict": "error"

function foo() {
    "use strict";
}
// "strict": "error"

(function() {
    "use strict";
    function bar() {
        "use strict";
    }
}());

何时不使用

zRK/6Y6g5Fa4hnV7bUs01QgWfizZIJPj5S+WCPrfTGU7J89GWELvFBnu9vEJmzcLgDtIz5Uk1A/gbGeSixZmwOFZO65aHRTWBmNV5/0mnEcjuHs8dosb69eU0nGJnhbUlhfGQnVXPhWh0wXgoxgHYyxPkf0N+mxDDJ/xJW+GlZcmhge7/H0+1egjMuYCbKPRxDCInsIA+q9/0qVOoAndE/hP5qzq3COKRoCDORj/PNKlvrWUJxzd2dSuzIOC3RKymrrvD7hjJbsYo8zy2hbnc3KUgId1UxePFXJgjy4WklfRfywUlwEEX976+VF8YBE/J2HNplqpSKSUTU1y+zOFpowRKL+VnSC4QxTW/yIPj6c2Q5D+YNYPNyviwG6qOaCS1c3egMQfwdDtlagpP2X9tEhQikaduHzF9jTcbhgGhRutyVxV4QuHztlO51eZxhUmI6Fbvx6eQ+7LEIbgnYGtoC6Epz9OhQCOj6nwUDNSw/0=