将64Bit Double转换为32Bit浮点Node.Js
我正在通过函数: http : //nodejs.org/api/buffer.html#buffer_buf_readdoublele_offset_noassert从缓冲区读取64位双打。
是否有可能以有效的方式将这些64位值舍入为32位值?
谢谢。
在带有-harmony_maths
标志的Node.js 0.11中,您可以简单地使用Math.fround()
:
Math.PI - Math.fround(Math.PI) // -8.742278012618954e-8
在Node.js 0.10.25中使用Float32Array
:
var fa = new Float32Array(1); fa[0] = Math.PI Math.PI - fa[0] // -8.742278012618954e-8
请参阅JavaScript中的高效float32运算