是否可以将javascript编号设置为32位而不是64位?
答案 0 :(得分:0)
根据JS权威指南,如果进行按位操作,该数字会自动转换为32位:
按位运算符期望整数操作数,并且就像那些操作符一样 值表示为32位整数而不是64位 浮点值。这些运算符将其操作数转换为 必要时编号,然后将数值强制为32位 通过删除任何小数部分和超过32的任何位来整数。 移位运算符需要0到31之间的右侧操作数。 将此操作数转换为无符号的32位整数后,它们将丢弃 超过5的任何位,产生适当的数字 范围。
您所要做的就是对数字执行按位运算,例如将其与0进行或运算。您将拥有相同的数字,但它将是32位。
答案 1 :(得分:0)
当我试图获取JavaScript数字并将其“转换”为32位时遇到了这个问题,因为Web Audio API将AudioParam值存储为32位,并且在将我的应用程序状态中的值与AudioParam进行比较时遇到问题值,并且它们不相同。
我最终了解了Math.fround()
,它将把您的数字四舍五入到
数字的最接近的32位单精度浮点表示形式
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Math/fround
因此,根据您的用例,这可能适合您。