首页 > 解决方案 > 在循环内或循环外声明变量/常量?

问题描述

哪种策略会更好?

// Creating the constant OUTSIDE the loop.
const expected = "Some String";

let expectedFound = result.some((element) => {
  return element.textContent === expected;
});


// Creating the constant WITHIN the loop.
let expectedFound = result.some((element) => {
  const expected = "Some String";

  return element.textContent === expected;
});

通常有人说应该声明变量尽可能接近它们的实际用法。但我不确定显示的情况。

只创建一次常量不是更好吗?当数组非常大时,它不会导致(理论上)创建大量变量的问题吗?

标签: javascriptarraysalgorithm

解决方案


鉴于您的示例,在some函数内创建变量并不是真正在循环内创建变量,因为它将在退出函数时被删除(因此,在每个“迭代”结束时)。

我将在some函数内部进行声明。


推荐阅读