Uint8Array的阵列连接器,芯片和引脚设备的输出

时间:2019-05-23 08:50:50

标签: javascript arrays node.js

我正在从设备获取一系列数组的输出数据。将卡刷入设备时,每次携带64个物品时,此阵列都会出现5次。我想连接这些数组。下面是我得到的最终数组。我知道array.concat(array2)应该可以工作,但是由于某种原因却不能。有人可以告诉我我在做什么错或有任何建议

(5)[Uint8Array(64),Uint8Array(64),Uint8Array(64),Uint8Array(64),Uint8Array(64)] 0 :

Uint8Array(64)[2,86,105,86,79,116,101,99,104,50,0,2,0,0,238,200,223,238,35,130,0, 213、2、207、0、128、91、55、37、0、3、131、1、9、37、42、53、49、57、54、42、42、42、42、42、42 42、42、48、53、50、50、94、75、65、78、73、77、79、90、72、73、32、32] 1个 :

Uint8Array(64)[3、32、32、32、32、32、32、32、32、32、32、32、32、32、32、47、94、51、53、48、53 42、42、42、63、42、59、53、49、57、54、42、42、42、42、42、42、42、48、53、50、50、61、51、53 48、53、42、42、42、42、42、42、42、42、42、42、63、42、214] 2 :

Uint8Array(64)[3,110,241,211,17,223,130,10,242,35,65,176,170,72,224,121,99,248,102,252,131, 180、174、84、98、54、209、168、39、193、225、129、138、114、155、135、73、118、101、68、229、32、42、91、254、210, [26、189、197、26、64、21、112、196、228、181、216、218、56、94、46、77、43、130] 3 :

Uint8Array(64)[3,72,80,22,34,37,108,147,123,170,72,79,190,73,86,3,108,152,228,68,253, 69、18、101、201、56、114、142、156、174、55、197、194、98、153、73、2、0、0、1、64、2、136、186、104、3, 159,57,1,144,255,238,1,5,223,238,48,1,12,223,238,38,1,200] 4 :

Uint8Array(64)[4,120,136,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0] 长度 : 5

原始 : 数组(0)

2 个答案:

答案 0 :(得分:1)

使用推入合并数组:

const array1 = [2, 7, 4];
const array2 = [3, 5,9];
array1.push(...array2);
console.log(array1)

使用 Concat Spread运算符:

const array1 = [1,2];
const array2 = [3,4];

// Method 1: Concat 
const combined1 = [].concat(array1, array2);

// Method 2: Spread
const combined2 = [...array1, ...array2];

console.log(combined1);
console.log(combined2);

答案 1 :(得分:1)

您还可以使用Buffer.concat来返回Buffer对象。如果您需要将结果设为Uint8Array类型,则可以包装您选择的任何方法的结果:

new Uint8Array(concatedArrays)