作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我收到一个字节数组,我想将其转换为整数数组。
这在 NodeJS 中可能吗?
这样做的原因:
代理从串行连接接收值,这是一个字节数组,我尝试对其进行解码并将其放入更具体的 JSON 对象中。
var uint8Message = new Uint8Array(8),
output = [];
uint8Message[0] = 40;
uint8Message[1] = 40;
uint8Message[2] = 40;
uint8Message[3] = 40;
uint8Message[4] = 40;
uint8Message[5] = 40;
uint8Message[6] = 40;
uint8Message[7] = 40;
var counter = 0;
var intermediate = [];
for (var i = 0; i< uint8Message.byteLength; i++) {
if (counter < 4) {
intermediate.push(uint8Message[i]);
}
counter++;
if (counter === 3 ){
output.push(new Uint16Array(intermediate));
counter = 0;
intermediate = [];
}
}
console.log(output);
我正在发送一个 intArray,它从 arduino 转换为 byteArray 到 NodeJS 串行端口处理程序。我想获取数组中的 8 个整数值:
四个引擎的状态和值。
所以最后我想要这个:
[1,89,2,49,1,28,3,89]
这个例子并不完全正确。但上面的例子是为了测试。
最佳答案
仍然不确定我是否正确理解你的问题,但如果你想将 Uint8Array
转换为 Uint32Array
你可以这样做
const uint8Array = new Uint8Array(8).fill(40)
console.log(new Uint32Array(uint8Array.buffer))
如果你需要普通的旧js数组,你可以这样做
const uint8Array = new Uint8Array(8).fill(40)
const intArray = Array.from(new Uint32Array(uint8Array.buffer))
console.log(Array.isArray(intArray))
您可能还想看看什么叫 DataView
允许对缓冲区内容进行低级访问。
关于javascript - 使用 javascript 将 byteArray 转换为 IntegerArray,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44428437/
我有以下 HashMap:- HashMap possibleSeq = new HashMap(); 我想在 map 中添加这样的内容:- possibleSeq.put(1,{1,2,3,4})
我收到一个字节数组,我想将其转换为整数数组。 这在 NodeJS 中可能吗? 这样做的原因: 代理从串行连接接收值,这是一个字节数组,我尝试对其进行解码并将其放入更具体的 JSON 对象中。 var
我是一名优秀的程序员,十分优秀!