将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运算