作者热门文章
- xml - AJAX/Jquery XML 解析
- 具有多重继承的 XML 模式
- .net - 枚举序列化 Json 与 XML
- XML 简单类型、简单内容、复杂类型、复杂内容
C# 有一个高性能的数组复制函数来复制数组就地:
Array.Copy(source, destination, length)
它比手动操作更快,即:
for (var i = 0; i < length; i++)
destination[i] = source[i];
我正在为 JavaScript 中的 Int32Array
和 Float32Array
寻找等效的高性能复制函数来就地复制数组,但找不到这样的功能:
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/TypedArray
最接近的是 copyWithin
,它只在数组内部进行复制。
是否有针对 TypedArray
就位 的内置高性能复制函数?
B 计划,是否有内置的高性能克隆功能? (编辑:看起来 slice()
就是答案)
最佳答案
您正在寻找 .set
它允许您使用输入数组(或 TypedArray)设置数组的值,可选择从目标数组的某个偏移量开始:
destination.set(source);
destination.set(source, offset);
或者,设置有限数量的输入数组:
destination.set(source.slice(limit), offset);
如果您想创建一个新的 TypedArray,您可以简单地使用 .slice
:
source.slice();
关于javascript - 如何将 TypedArray 复制到另一个 TypedArray?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35563529/
我是一名优秀的程序员,十分优秀!