如何改变四个十六进制数浮动在js
how to change four hexadecimal number to float in js?
像这样:
我有一个浮点数25.56
,我可以把它转换成js中的四个十六进制数E1 7A CC 41
。翻译方式在c语言中称为并集
但我不知道如何改变E1 7A CC 41
的浮动在js
您必须使用类型化数组和数组缓冲区:
Array.from(
new Uint8ClampedArray( // Represents the four bytes…
new Float32Array([25.56]) // …of this number
.buffer
)
).map(function(a){
return a.toString(16);
});
返回数组[ "e1", "7a", "cc", "41" ]
。
反过来也可以:
new Float32Array(
new Uint8ClampedArray(
["e1", "7a", "cc", "41"].map(function(a){
return parseInt(a, 16);
})
).buffer
);
注意:这并不完全返回Float32Aray
和25.56
,而是25.559999465942383
,因为这是您使用32位浮点数获得的所有精度。对于Float64Array
,你会得到十六进制数组["8f", "c2", "f5", "28", "5c", "8f", "39", "40"]
,然后你会得到数字25.56
,精确地。
这些api仅在Firefox 4、Chrome 7和Internet Explorer 10之后才支持。
构造函数Uint8ClampedArray
和Float32Array
的实参可以是长度,也可以是数组或ArrayBuffer
。
当获得一个数组时,将从该数组创建一个新的类型数组。
当它们得到一个ArrayBuffer
时,一个新的类型数组将基于缓冲区的内容创建。
相关文章:
- 在js中将字符串转换为十六进制
- 将十六进制字符串转换为字节数组
- 节点.js从 UTF8 文件创建十六进制缓冲区
- Node.js:crypto.pbkdf2密码为十六进制
- 转换颜色十六进制值以用于三个 JSON 文件.js
- 三js十六进制色差
- 应用于表示负十六进制的字符串的 JS 一元加运算符的行为
- 如何从 JS 中的字符串中获取十六进制整数
- JavaScriptforeach循环遍历一个十六进制值数组,使用setTimeout循环遍历背景颜色
- 通过JSONAJAX从PHP到JS传递十六进制的尖括号
- javascript中字节数组到十六进制字符串的转换
- 使用bitcoinjs-min.js从字节数组转换为十六进制格式
- 如何将缓冲区数组转换为十六进制
- 如何改变四个十六进制数浮动在js
- 如何将十六进制数压缩成短字符串
- 用大十六进制数转换为二进制的Javascript破解
- 为什么PHP和JavaScript在处理八进制和十六进制数时有问题?
- 从文件中读取十六进制数
- 将24位十六进制数转换为十进制,加1,然后再转换回来
- 套接字获取文本字符串作为十六进制数组,多个套接字相互调用's事件