gpt4 book ai didi

javascript - 在嵌套的 for 循环中,从较长的循环开始有什么好处吗?或相反亦然?

转载 作者:数据小太阳 更新时间:2023-10-29 05:17:25 24 4
gpt4 key购买 nike

例如:

var longArray = [1, 2, 3, 4]
var shortArray = [2, 3]

哪个更快?

长循环优先:

for (var i = 0; i < longArray.length; i++) {
for (var j = 0; j < shortArray.length; j++) {
if (longArray[i] === shortArray[j]) {
// do something
}
}
}

或者先短循环:

for (var i = 0; i < shortArray.length; i++) {
for (var j = 0; j < longArray.length; j++) {
if (longArray[i] === shortArray[j]) {
// do something
}
}
}

或者有没有我没有考虑到的优点?还是根本不重要?

最佳答案

短循环优先通常更快,只是因为它花费更多时间以相同的顺序访问元素,因为它们倾向于在内存中布局。你需要 longArray 来拥有更多的元素,至少有几千个。这是一个演示差异的测试用例:https://jsperf.com/loop-order-sl

对于您发布的数组,其中有一个相对较小的 longArray,性能差异可以忽略不计。正如@Ajaypayne 观察到的那样,较短的数组可能会稍微快一点,反之亦然,具体取决于环境。

关于javascript - 在嵌套的 for 循环中,从较长的循环开始有什么好处吗?或相反亦然?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49926073/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com