no-extra-boolean-cast (Rules) – Eslint 中文开发手册

[
  •   Eslint 中文开发手册

    no-extra-boolean-cast (Rules) - Eslint 中文开发手册

    "extends": "eslint:recommended"配置文件中的属性启用此规则。

    在--fix命令行上的选项可以自动修复一些被这条规则反映的问题。

    在if语句测试中,表达式的结果将被强制为布尔值,通过双重否定(!!)或强制转换为布尔值Boolean是不必要的。例如,这些if陈述是等同的:

    if (!!foo) {
        // ...
    }
    
    if (Boolean(foo)) {
        // ...
    }
    
    if (foo) {
        // ...
    }

    规则细节

    该规则禁止不必要的布尔转换。

    此规则的错误代码示例:

    /*eslint no-extra-boolean-cast: "error"*/
    
    var foo = !!!bar;
    
    var foo = !!bar ? baz : bat;
    
    var foo = Boolean(!!bar);
    
    var foo = new Boolean(!!bar);
    
    if (!!foo) {
        // ...
    }
    
    if (Boolean(foo)) {
        // ...
    }
    
    while (!!foo) {
        // ...
    }
    
    do {
        // ...
    } while (Boolean(foo));
    
    for (; !!foo; ) {
        // ...
    }

    此规则的正确代码示例:

    /*eslint no-extra-boolean-cast: "error"*/
    
    var foo = !!bar;
    var foo = Boolean(bar);
    
    function foo() {
        return !!bar;
    }
    
    var foo = bar ? : bat;

    版本

    这条规则是在 ESLint 0.4.0 中引入的。

    资源

    Rule sourceDocumentation source

  •   Eslint 中文开发手册
    ]
    转载请保留页面地址:https://www.breakyizhan.com/javascript/34304.html

    posted on 2020-07-07 21:31  MrAit  阅读(734)  评论(0编辑  收藏  举报

    导航