为什么Array.of
存在? AFAIK 它只是根据传递的参数创建一个数组(即 Array.of(1,2,3)
-> [1,2,3]
)。
这个JSPerf表明这个简单的替换函数(其工作方式完全相同)的执行速度比 Array.of 快 80-90%
const array_of = (...args) => [...args];
^ 这是有效的 ES6,Array.of 也是有效的
最佳答案
完全没问题。向函数传递大量参数并创建其堆栈帧只是一项昂贵的操作。
此外,如果您引用文档,它是 Array
的静态方法:
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/of
因此,还有其他如何使用它的方案,例如对 Array
进行子类化,以便您可以创建 Array
子类的实例。这可能很有用,比如通过引用将其作为子类的工厂传递。
虽然其性能较差,但对于网络应用程序中使用的常用数据大小来说可能并不重要。
关于javascript - 为什么Array.of存在?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/76575350/