-1
數據表把我2字節用於數據,其被定義爲:解析到在第二補碼形式的16位值
「這兩個字節是2的補碼形式的16位的值,其範圍是從0xF800(-4096)到0x07FF(4095)「
我真的不明白如何解析JavaScript中的這些數據。
數據表把我2字節用於數據,其被定義爲:解析到在第二補碼形式的16位值
「這兩個字節是2的補碼形式的16位的值,其範圍是從0xF800(-4096)到0x07FF(4095)「
我真的不明白如何解析JavaScript中的這些數據。
目前所有主流瀏覽器都支持DataView
類。
鑑於您的Uint8Array
包含例如[0xf8, 0x00]
:
var a = new Uint8Array([0xf8, 0x00])
,你可以把它當作Int16
值,而不是數組:
var view = new DataView(a.buffer)
var val = view.getInt16(0, false); // false for big-endian
> -2048
如果陣列中的數據採用的其他方式(小端)爲第二個參數,以供true
.getInt16()
。
該數據表錯誤 - 0xf800 ... 0x07ff實際上是'-2048 ... 2047' – Alnitak
儘管有錯誤,要回答您的問題,我們需要現在如何將這些數據到達您的應用程序,以及它如何存儲。 – Alnitak
是的,這也是我的想法。據我所知,價值並不好。我會給他們打電話。 好吧,我的數據到達了我在uint8Array中解析的原始數據。也許我必須改變這兩個字節的類型來獲得這個值 –