我正在用javascript编程一个节点红色功能块。 我需要读取一个浮点值并将其转换为uint16array。 在其他stackoverflow问题中,我可以看到从UintArray到float的反转情况。 我需要从Float到UintArray 。 Javascript: How to convert signed Char Array to Float (maybe using IEEE754)?
var chars = new Uint8Array([-78, 119, 99, 63])
var floats = new Float32Array(chars.buffer)
> [0.8885451555252075]
您知道如何将Float转换为UintArray吗?
最诚挚的问候。
答案 0 :(得分:0)
首先,您不能将负值放入Uint8Array
中。用于0到255之间的无符号整数值。因此-78
将变为178
。
改用Int8Array
(从-128到127)。
反向转换非常简单:
var chars = new Int8Array([-78, 119, 99, 63])
var floats = new Float32Array(chars.buffer)
console.log(floats)
var back = new Int8Array(floats.buffer)
console.log(back)
希望有帮助。