1、定义
根据文档的解释:Uint8Array 数组类型表示一个8位无符号整型数组,创建时内容被初始化为0。创建完后,可以以对象的方式或使用数组下标索引的方式引用数组中的元素
2、在JS中遇到Uint8Array 的场景
js调用动态库,动态库由c语言编写,并且里面的方法使用了指针、int、double等js所没有的概念。
那么在使用动态库时,需要使用ref、ref-array等库来进行转换。
例如使用一个double类型数组的指针
var doubleArray = refArray(ref.types.double);
var fft_amplitude=new doubleArray(length);
调用动态库方法后,fft_amplitude里面得到的将是Uint8Array
3、转换为js的普通数组
使用fft_amplitude[0]下标的方式,可以获取到每项的值,所以可以使用遍历来转成js数组。
var arr = []
for(var i = 0; i < fft_amplitude.length; i++) {
arr.push(fft_amplitude[i])
}
当然,更快捷的方式是使用Array.from方法
var arr= Array.from(fft_amplitude)