【问题标题】:JS Refactoring multiple condition and returns booleanJS重构多个条件并返回布尔值
【发布时间】:2019-03-06 18:52:40
【问题描述】:

我如何重构这段代码?

const toto = 1
const isToto = toto === 1 || toto === 12 || toto === 3 || toto === 4

我需要成为一个布尔值

【问题讨论】:

标签: javascript refactoring conditional-formatting


【解决方案1】:

对于包含多个值的检查,您可以使用 Array#includes 在数组/字符串中查找值。

const
    toto = 1,
    isToto = [1, 12, 3, 4].includes(toto);

console.log(isToto);

【讨论】:

  • 打败我。 : ) +1
【解决方案2】:

首先,请注意= 是一个赋值运算符,您可以使用===== 进行比较。现在,一种解决方案可能是创建一个接受值的Set,然后检查创建的集合是否包含存储在toto 变量中的相关值:

let toto = 1;
const acceptedValues = new Set([1, 12, 3, 4]);
console.log(acceptedValues.has(toto));
toto = 2;
console.log(acceptedValues.has(toto));
.as-console {background-color:black !important; color:lime;}
.as-console-wrapper {max-height:100% !important; top:0;}

【讨论】:

    猜你喜欢
    • 2017-05-24
    • 1970-01-01
    • 1970-01-01
    • 2011-12-08
    • 2014-04-26
    • 1970-01-01
    • 2011-03-14
    • 2015-04-07
    • 1970-01-01
    相关资源
    最近更新 更多