在循环中重用变量时,哪一个更有效?



只是想知道哪一个更有意义的声明'a'和'pushRes',为什么你会选择一个而不是另一个在内存,作用域等方面?为了简单,我删除了try/catch块。

const pushRes=[];
for (..){
const a = await myFunc(i);
pushRes.push(a);
}

let a;
let pushRes=[];
for (...){
a = await myFunc(i);
pushRes.push(a);
}

你不需要声明它,也不需要使用await。只需将该函数直接添加为其他函数的参数。它不会触发函数,直到myFunc返回一个值。

const pushRes=[];
for (..){
pushRes.push(myFunc(i));
}

与代码中的其他内容相比,任何可能的性能差异都是微不足道的。

你应该追求可读性。在循环外声明变量似乎表达了在循环外需要该变量。如果不是,那么你只是引入了不必要的复杂性。在尽可能靠近使用变量的地方声明变量

最新更新