所以我在JavaScript中有一个Uint16Array:
let myArray = new Uint16Array(10)
现在,我想将该数组中的特定值分成两个8位值-该值的低字节和高字节。
myArray[5] = 300 // How to get low, high byte of 16-bit value 300?
产生的两个值应为number
类型。
最简单的方法是什么?
答案 0 :(得分:1)
可以通过以下方式找到较低的字节:
let val = myArray[5] & 0xFF;
可以通过以下方式找到较高的字节:
let val2 = (myArray[5] >> 8) & 0xFF;
示例:
> let myArray = new Uint16Array(10);
< undefined
> myArray[0] = 300;
< 300
> myArray[0] & 0xFF
< 44
> (myArray[0] >> 8) & 0xFF
< 1