我有一个 JavaScript Float32Array,我想把它转换成一个普通的 JavaScript 数组。我怎样才能做到这一点?
问问题
32471 次
3 回答
56
如果您不需要支持旧浏览器(不幸的是,包括 IE),您可以使用ES6Array.from
中添加的:
var array = Array.from(floatarr);
这现在适用于所有浏览器的新版本(IE 除外),并且它也适用于所有主要的移动浏览器。
于 2016-05-31T16:13:29.650 回答
44
使用 Array.prototype.slice 转换float32Array
为 Array。jsfiddle
var floatarr = new Float32Array(12);
var array = Array.prototype.slice.call(floatarr);
于 2012-10-06T14:29:51.517 回答
1
您可以将它用作任何数组,这意味着您可以这样做:
var arr = [];
for (var i=0; i<myFloat32array.length; i++) arr[i] = myFloat32array[i];
但通常将其用作 Float32Array 而不是转换它更有效。
如果您不想混合不同类型的值,请不要转换它。
于 2012-10-06T14:26:41.717 回答