【发布时间】:2016-12-11 09:33:42
【问题描述】:
当我尝试在谷歌应用脚本中运行以下代码时
var numArray = [31, -117, 8, 8, -102, -124, 75, 88, 2, 0, 106, 117, 108, 121, 46, 116, 120, 116, 0, 1, 4, 0, -5, -1, 106, 117, 108, 121, -13, -113, 116, -57, 4, 0, 0, 0];
var typedArray = new Uint8Array(numArray);
...我明白了:
ReferenceError: "Uint8Array" is not defined.
同时
var numArray = [31, -117, 8, 8, -102, -124, 75, 88, 2, 0, 106, 117, 108, 121, 46, 116, 120, 116, 0, 1, 4, 0, -5, -1, 106, 117, 108, 121, -13, -113, 116, -57, 4, 0, 0, 0];
var typedArray = new Array(numArray);
...工作得很好。是否有一种巧妙的解决方法可以在谷歌应用脚本中实现 Uint8Array?
【问题讨论】:
-
使用Uint8位数组的目的是什么?这只是为了节省谷歌服务器的空间吗?你希望这个数组有多大?
-
GAS 在 Rhino 上运行,可能不是最新版本; typed arrays are not supported.
-
@Xepoch,我可以请你分享你的“字节翻转”代码吗?听起来您能够成功模仿 Uint8Array 的功能。
-
@July.Tech, dsp.stackexchange.com/a/36220/25336
-
@Xepoch,您链接到的代码 sn-p 中的这一位有效地回答了我的问题:
vegaArray[i]<0?vegaArray[i]+256:vegaArray[i];。谢谢!