js如何正确解析HEX / fffd

时间:2018-05-29 18:13:05

标签: javascript hex

这里有问题。我从硬件接收数据为HEX号码。我使用它将它们变成字符串(它是预期的):

arr.push(data.charCodeAt(0).toString(16))

效果很好。例如,我收到0x00,这段代码正确地添加了一个' 0'字符串到数组。

但是有一个问题。 JS自动将这些代码理解为符号。当我尝试0xAA或0x80时,我收到了FFFD。我认为。这意味着utf-8中没有这样的符号。

如何让js将我的数据理解为十六进制数,而不是符号代码?

编辑:我发现我的问题是我使用从硬件收到数据的库的错误方法。

3 个答案:

答案 0 :(得分:0)

只需convert the Hex number to decimal

yourNumber = parseInt(hexString, 16);

答案 1 :(得分:0)

要将十六进制转换为十进制,您可以使用下一个函数:

parseInt(hexValue, 16)

希望这会有所帮助:)



data = '0XAA'
data1 = '0X80'
console.log( parseInt(data, 16))
console.log( parseInt(data1, 16))




答案 2 :(得分:0)

好的,我发现我的问题出现在我用来接收数据的库中