所以我在JavaScript中有一个Uint16Array:

let myArray = new Uint16Array(10)


现在,我想将此数组中的特定值分成两个8位值-该值的低字节和高字节。

myArray[5] = 300 // How to get low, high byte of 16-bit value 300?


产生的两个值应为number类型。

最简单的方法是什么?

最佳答案

低字节可以通过以下方式找到:

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

关于javascript - 获取Uint16Array成员的单独的低字节和高字节,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/53567944/

10-12 12:18
查看更多