我有一个JavaScript Float32Array,我想将它转换为常规JavaScript数组。我怎么能这样做?
答案 0 :(得分:41)
使用Array.prototype.slice将float32Array
转换为Array。 jsfiddle
var floatarr = new Float32Array(12);
var array = Array.prototype.slice.call(floatarr);
答案 1 :(得分:28)
如果您不需要支持旧浏览器(包括IE,不幸),您可以使用Array.from
added to ES6:
var array = Array.from(floatarr);
除了IE之外,每个浏览器的新版本中都有now works,它也适用于大多数移动浏览器。
答案 2 :(得分:1)
您可以将它用作任何数组,这意味着您可以执行此操作:
var arr = [];
for (var i=0; i<myFloat32array.length; i++) arr[i] = myFloat32array[i];
但是将它用作Float32Array而不是转换它通常会更有效。
如果您不想混合使用不同类型的值,请不要将其转换。