【发布时间】:2020-05-02 08:27:08
【问题描述】:
我只是好奇,是否值得在循环某个数组之前有 if 条件,在 90% 中将是 1 个项目的数组? 代码示例:
const a = [3];
const aLength = a.length;
if(aLength > 1) {
for(let i = 0; i < aLength; i++) {
func(i);
}
} else {
func();
}
function func(position = 0) {
console.log('hi' + position);
}
【问题讨论】:
-
代码反映您的意图更为重要。不用担心微小的性能问题。
-
@Pointy 我也对不良/良好的代码实践感兴趣,也许它是被禁止的或专有技术,只是想知道。
-
在这种特殊情况下,我认为不区分这两种情况更具可读性。 1 元素数组不是特殊情况(即,如果您不强制 使其看起来像特殊情况,它的行为方式完全相同),并且它的行为方式与更大的数组。
-
去掉 if else 会使代码更短、更易读、更高效。
标签: javascript loops if-statement optimization