JavaScript || (或)条件具有更好的性能或包括?

标签 javascript performance

哪一个性能更好,为什么?谢谢你帮助我

if(x==="abc" || x ==="def" || x==="ghi" || x==="jkl"){
 //logic
}

if(["abc","def","ghi","jkl"].includes(x)){
 //logic
}

最佳答案

小数组上没有区别 也许它在更大的数组上会有所不同

var loop = 1000000;

var total1 = 0;


function getRandomInt(min, max) {
    min = Math.ceil(min);
    max = Math.floor(max);
    return Math.floor(Math.random() * (max - min + 1)) + min;
}


for(var i = 0; i < loop; i++)
{
    var x = ["abc","def","ghi","jkl", "aze", ][getRandomInt(0,3)];
    var a = new Date().getTime();
    if(x==="abc" || x ==="def" || x==="ghi" || x==="jkl"){
     var b = new Date().getTime();
     total1 += (b-a);
    }
    else {
         var b = new Date().getTime();
     total1 += (b-a);
    }
}



var total2 = 0;

for(var i = 0; i < loop; i++)
{
    var x = ["abc","def","ghi","jkl"][getRandomInt(0,3)]
    var a = new Date().getTime();
    if(["abc","def","ghi","jkl"].includes(x)){
     var b = new Date().getTime();
     total2 += (b-a);
    }
    else{
      var b = new Date().getTime();
      total2 += (b-a);
   }
}


console.log("=> total1 "+(total1/loop));
console.log("=> total2 "+(total2/loop));

关于JavaScript || (或)条件具有更好的性能或包括?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65625452/

相关文章:

javascript - 如何在 Chrome 分析/性能选项卡中阅读评估脚本时间

javascript - 使用导航箭头时突出显示链接

javascript - 来自 JavaScript 的 iframe 内容

javascript - 使用 CSS 或 JavaScript 水平对齐表格行

performance - Ember 数据 : pushing many records to store is slow

php - MySQL SELECTS 的开销——最好按顺序使用一个或多个

javascript - 如何实现jquery验证

javascript - 如果 ['Name' ] 超过 15 个字符,更改字体大小

python - 在 Python 3.4 中切片真的更慢吗?

performance - Scala集合转换性能: single looping vs.多重循环