选项

此规则在其默认状态下不需要任何参数。如果您想启用以下一项或多项功能,您可以传递一个带有如下选项设置的对象:

This rule, in its default state, does not require any arguments. If you would like to enable one or more of the following you may pass an object with the options set as follows:

  • allowShortCircuit 设置为 true 将允许您在表达式中使用短路评估(默认值:false)。

    Yp7/+MCBU8JycgNsOCvmfknYQfknrjBJtG3/yZBWDo82SnGzU2tmWowyYHpATOKYdPH0rV2HmpGMDFxzKxqbLosUfKtxmm9dPDrCVt4IDwIizTRh0isOFCFvPUcviGA7OV2dLmL3hfrTCUqQ7qMRmsWlAptzAAi5Cyd8HLZpSj21tYjtSE6YvawMpZqfStFpjG5EIHe6iDQ17EqW2RoCrQ==

  • allowTernary 设置为 true 将使您能够在表达式中使用三元运算符,类似于短路评估(默认值:false)。

    OyYosAVzbqR/PBDshaUfpa4DbqfoL6QFPRuK2Lxf/VEYWmjhvjkiJAZeQzEOM3qEmbejVeHKyX3EVKbxxW54vtpFmbBFyxqQPwv9/GJ50IdbjKGDTT0Bgv9f/XS5iykARbeT3LVYAQS7kyD12KqO2Oq0b6uMoUEkl7vjy3WFbysx6abJ6THZUNPW2OmBLrFocFMKJDSzDyWA+V+WChZQOOACqjoZaG/F32uIqHtrEdAd9O7vXMBFjV2fQ+2pr8lA

  • allowTaggedTemplates 设置为 true 将使您能够在表达式中使用标记的模板字面(默认值:false)。

    GPoXGmNvbLXVA5gM4xkT8vRBcnd21b5aESl7EcOG4Lqpobl+8M7d66BeVRWnq46kzxCOz3/mLXafVg8ep1MmsUNeQtpHVqZPhS5ZRH/rzASc+l/DGk5wAW11vzR2j8Tc+XffFr1zCpX4C3eGo1AiGKo5HXcZC7GRrxzsle9i9kmMaOr4QfWIpMtvy9JHAKWNwtwM6FcQV0U/JJc9kT0Uqg==

  • enforceForJSX 设置为 true 将标记未使用的 JSX 元素表达式(默认值:false)。

    02W8P4Clgzaj9mNtmypeL/GyqJ506C2N/NtagtWLi56Y1e8H+ClIz3Z0R0lnEQZBRENwPOHXh1AIg6T0oTk6eCtjH7Mh46M53HFTG/734E2ntPpNJ2IvDjpPglxEMuvT5FQCmqYyRMpRjV7FgtubhvE0Zwgqmy7mfiPGs/3HYU4=

Xk160n2hOVUktCFeWvl4bOXESJAik/b1afB6IVGU8OkD+n5bZFGC+C4/N8N5xyP/wF+pMChA7bcboLLA1XzGEeoVFF/zvU73kCRsokPD2kku+BlJ0hy3gKG6jSKkKnNnnQfcymNQxX8M+67GBM6DUNOwN2PzZiE1p22wEUYvvOwrijPWC8CNVpA1sDoSwlnc6iMT7eAX/icsWH8DOBo/yPOUfdW1bZq4ZIk7Zpe4l3zfH5a7NwsoUWYmfnQddYMEEnN7r56PbuYZq0WLU5JN2p6LHKgMry7VAtPRLzPLeGYMGAMidzpiRFAW+vMI9XvHDlFmYN0KbahCJNJtTf/dimmWcFRQB60WTztpH85yCGReV9y3i2OeNKs1FlbnYaoW6VWMeW53Xzf6+uLPhicHYJNDkXaXASk+m17bkXgz+O+P1ccctjSObOSPcRTT1brBmeprHOAQ6kk4SLih5KPxxtcifb/jbidBEj5a3RfYV42YkbMkk+b3jW7NxRLV4by0MCCAshWlAV3z6AE1jNpZgE24cq1Dhpmlevs9XAdIdkg=

rHXn7M2giEXng7lT7b04l85DChHI3qIDYAZ58OTjqHD9nUa15kIsFMXHJmE7YlXh1ilJxYUz8MQcDmvbDCOt0oLAKnHw/ZwLgIRivX3ssuRlW0SZQrvLmQfIs7gxhxgg1Af5iir15eSFLAaVANVgoTJUoNAR4fe0DM3CD4kVqKVVlJy0sw5P1Y/8zP79nXHNZ1Bq2Xx19hQUarmjCWZ5lOfnc6CMWkzMbQrX9aGRf2X/w4zDWGoMFyThh7xa/3rsCPkat69KkfVSn/6G6Tpv4EGPv+lK6GTOEL4EaZY25yWlH70kNMx6KRVZCbVroh3DTMBfRwPv5YZJvxR7EUStwIaW89LDITpe16aEhQEBS7w=

/*eslint no-unused-expressions: "error"*/

0

if(0) 0

{0}

f(0), {}

a && b()

a, b()

c = a, b;

a() && function namedFunctionInExpressionContext () {f();}

(function anIncompleteIIFE () {});

injectGlobal`body{ color: red; }`

rHXn7M2giEXng7lT7b04l85DChHI3qIDYAZ58OTjqHD9nUa15kIsFMXHJmE7YlXh1ilJxYUz8MQcDmvbDCOt0oLAKnHw/ZwLgIRivX3ssuT6CQIqh6uCUgOJ4RlcjHZG6dlbKwGbIo6VlOAiFswwvi6aX1XNlZbYIUPasD88pPSc8WopElQWlCcnVI0yYeBz+rckRF2YQA9G/E4hD8cpEXebA83flepIXaFzmpDfd5+YTVH0oKF1OOBR9pJz+SPs3D+X8WXEVVD838MnveSKYF0hPD4pfrVGMHdQ7L/UPRoLo0yzdZ/WaUXLjUiGyOhUWpt+M4utiP0eLXol6mR93B032WgKqiJd9udSui19+GE=

/*eslint no-unused-expressions: "error"*/

{} // In this context, this is a block statement, not an object literal

{myLabel: someVar} // In this context, this is a block statement with a label and expression, not an object literal

function namedFunctionDeclaration () {}

(function aGenuineIIFE () {}());

f()

a = 0

new C

delete a.b

void a

vntWnowv5IT9ukhM2M8aOdz6nLdGI++ji3FRF+bsLB5vD7bANr4uLo4cb8g+khnI/av8ajZokkJHRs83sooZhHjJHUheTV5DSFjkIWAaWRyZv5jMVdVp0WmliErp6i4aH+Die+dp9umpcvg9uPPKnF7P7xJt9cSiulTryg5rx/NzYQqNI2EgwJvGJheL9sgx9TngFVoDLmycy8RdOLMgQoxpBVUuO94bDMKQ1hNEda2veen6Wi8jE3VkznaslDIwQbKSGPesz2v2+eQuOZ25kvhcc/h39UD8prFKe8EPw+srdCuYVdexoNEYFRJygn10hb9iTeKraXlLuae+Sx0sCHEw1DoVvI0qScUUuAd/hfvGCEA56ab1/NjSH9ytOeYUBACnRBkSGEYAC73QJzM7WEq0lTT0x85Vo30gBDe1LErzmOA31QcoFhV3I2k65bTdX70gHMVxLpUp9NCs8JosJGN/xnNWFb4QeKd46b2H169fBu+G+lG7RTWc8ALUZbeYXO4wMiNlei+MuDIyxXO/3tnXt70q99RNPsv6jTI/esnVjkew7npvm3Os3RMiuEsy4x7+Rh9hblCHW85Oq5oGgZ8U48XIXhPKlq1DKFWkgBPH5YYRXhI3MxwHFCSnIrXPUSGSpSz8g0zm+C5SgnBqr3XRmnRTeA5t+uFJH3GaNLgoLZ5eR/pSqmu29+xpQ8W0m/3fkH7sc1sTsYOwDK3X7W93nn27S+zcWT0fRvLub5upWzVhhiQZDkUdB2z8SabD1scp1MRJeJTa/8cJTeIfwooAhBUkJx/FiPvmv3CwlRGkX4AzjAeOqntFyL53FIsNagVIyPbf8Q4K+riIbhpEw3vLfyQcFw/HuIkKN7wRChJJWC7060+yk0SBqCRP9Q0+NhI35ighw86u2MEb0bSqOxjjIGRjN5JsVlSHMGgKEItZNy8WhKneGlYNthAqBegtNCv+RWTx9BENFccqeiPDZyYhLjOsk8cXvmU1w4NrOeU=

0pm+376IcRa+9vRop1qDbnbnZIe9LRUJ3VJgL9KUCLK+nnN7rnbwIRZ/w+DTNyMD7sYB4zYcraW5DW9Ecrg8XBROK7wDJY7Us6BkR1DH1llO79WDEpBhX+1XZqqmgcooEv9YV60RuRG/Jmc4AkrTDNsSBOxkLDvmAs3ivx7YUONN/AyPmJ2JIG0BFei0JhAPt9YJ7MQMKtiMy55SyUDn0Q==

/*eslint no-unused-expressions: "error"*/

"use strict";
"use asm"
"use stricter";
"use babel"
"any other strings like this in the directive prologue";
"this is still the directive prologue";

function foo() {
    "bar";
}

class Foo {
    someMethod() {
        "use strict";
    }
}

MUvHgNUV9mKYXaelklHtEwI5K1LxnOyOPNiqV9hND0ySc+9qFdnKqxz2pAxRtSn0zHiDNLQY8ruMuXOuiKatyXglLr4gQxYFRwhbLaBUMVTpiN2btN24IQx+wcfc1E1atbwH3VZHY9EQXpyaQ9yGPST2qVitqn0suCRNR02RYviI6wlXs0Sa80Bk4/zpSuhF6B8eu2LXhpFtEDVS83p0hA==

/*eslint no-unused-expressions: "error"*/

doSomething();
"use strict"; // this isn't in a directive prologue, because there is a non-directive statement before it

function foo() {
    "bar" + 1;
}

class Foo {
    static {
        "use strict"; // class static blocks do not have directive prologues
    }
}