Я хочу поместить массив 128х128 чисел от 4 до 140 в массив из 16384 байтов, используя шестнадцатеричное значение.
Я пытался использовать BigInt, но массив байтов больше не будет работать.
var data = [];
for(var i = 0; i<128; i++) {
for(var j = 0; j<128; j++) {
data[i + j * 128] = "0x" + (blocksList[blocks[i][j]] * 4).toString(16).toUpperCase();
// data[i + j * 128] = BigInt(`0x${(blocksList[blocks[i][j]] * 4).toString('hex', 0, 8)}`);
}
}
var mapfile = {
type: TAG.COMPOUND,
name: '',
val: [
{
name: 'data',
type: TAG.COMPOUND,
val: [
{
name: 'colors',
type: TAG.BYTEARRAY,
val: Buffer.from(data)
}
]
}
]
};
Я получаю эту ОШИБКУ: RangeError [ERR_OUT_OF_RANGE]: значение «value» находится вне диапазона.Должно быть> = -128 и <= 127. Получено 140. </p>