Javascript 用于存储函数的JS集合与数组

Javascript 用于存储函数的JS集合与数组,javascript,arrays,function,set,Javascript,Arrays,Function,Set,将js函数存储在集合还是数组中更好? 我怎么理解,集合是二叉树。而存储在集合中必须有比较功能 所谓“更好”,我指的是读写性能、搜索和删除,最后是所有条目的for循环。我将在每个帧中调用这些函数。所以节省时间是非常重要的 关于内存,我不太在乎,因为函数不多,每个数组超过100-500个函数,还有5-10个数组。总共1000-5000个功能 我知道集合更适合添加和删除,数组更适合在元素上迭代。但我无法理解它对函数的作用。在所有性能情况下,您都应该对这两种性能进行分析,因为性能指标每年都会发生变化。在

将js函数存储在集合还是数组中更好? 我怎么理解,集合是二叉树。而存储在集合中必须有比较功能

所谓“更好”,我指的是读写性能、搜索和删除,最后是所有条目的for循环。我将在每个帧中调用这些函数。所以节省时间是非常重要的

关于内存,我不太在乎,因为函数不多,每个数组超过100-500个函数,还有5-10个数组。总共1000-5000个功能


我知道集合更适合添加和删除,数组更适合在元素上迭代。但我无法理解它对函数的作用。

在所有性能情况下,您都应该对这两种性能进行分析,因为性能指标每年都会发生变化。在进入数十万个项目之前,您可能不会注意到任何可测量的性能差异

根据您在问题中定义的规格,简单的答案是,这无关紧要。函数在Javascript中是一流的公民,因此数组或集合如何处理数据和函数之间没有区别

在每帧迭代数千个函数时,不会遇到任何性能问题;这是javascript的核心功能,已经进行了高度优化。您需要优化的地方是函数本身,因为它们越复杂,每个函数运行的时间就越长


与其现在就担心它,不如使用一个数组,构建您的项目,看看您是否遇到了性能瓶颈。然后,您可以分析您的代码,以查看这些瓶颈发生在哪里。它们很可能不是由于数组操作,而是函数本身运行的代码。

如文档所述:“设置对象允许您存储任何类型的唯一值,无论是原始值还是对象引用”您能否澄清“更好”的含义?好的,我知道。我将存储独特的功能。我只是想知道哪一个功能更好。我知道,对于数字或字符串,最好在搜索和删除时将其存储在集合中。最终,这并不重要,除非您担心两个集合之间的重复、交叉、并集或差异,这对函数没有多大意义。好的@Soviut我会的update@Gor我更新了我的答案以反映你的问题。简而言之,只需使用一个数组,因为这不会成为性能瓶颈。