获取 Uint16Array 成员的单独低字节和高字节

Get separate low and high bytes of a member of a Uint16Array

所以我在 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