首页 > 解决方案 > JS:应该在内部还是外部创建仅由一个函数使用的海量数组?

问题描述

在我正在阅读的一段代码中,有一个函数大致如下:

const toColor = (name) => {
  const colors = [
    colorHash,
    colorHash,
    colorHash // many more colors
  ];

  // some simple actions to get a color from the given name
  
  return color;
};

colors数组非常庞大,并且该函数被大量调用。我的理解是,每次调用函数时都会重新创建这个数组。将这个数组移到函数之外并让它保持在那里是一种好习惯,还是每次函数调用重新创建数组的性能影响微不足道?

标签: javascript

解决方案


每次执行函数时不会更改的任何数据都应存储在函数之外。

出于同样的原因,在谈论循环时也是如此。


推荐阅读