2 回答

TA貢獻1801條經驗 獲得超8個贊
無符號 8 位數字的最大值是 255。較大的數字將被截斷或翻轉,具體取決于 os/cpu。如果您想在 8 位數組中轉換 32 位數字,請嘗試這樣的操作。
var number = 21640;
var byte1 = 0xff & number;
var byte2 = 0xff & (number >> 8);
var byte3 = 0xff & (number >> 16);
var byte4 = 0xff & (number >> 24);
var arr1 = Uint8Array([byte1,byte2,byte3,byte4]);
創建數組時,只需顛倒字節的順序,具體取決于您想要小端還是大端。

TA貢獻1821條經驗 獲得超5個贊
這是一個在控制臺中顯示 5488 的工作示例
var bigNumber = new Uint32Array([21640]);
console.log(bigNumber[0].toString(16));
由于您在問題中添加了更多內容。如果你想轉換
var byte1 = 0x88;
var byte2 = 0x54;
var byte3 = 0;
var byte4 = 0;
var bigValue = (byte4 << 24) | (byte3 << 16) | (byte2 << 8) | (byte1);
console.log(bigValue);
盡管您需要考慮字節順序
添加回答
舉報