Closed leecade closed 9 years ago
在 es 语言规范里面没有能定下来草案之前,估计科学计算还真没法在 js 语言层面解决了。 目前还只能靠相应的模块解决了。
是在说这个? https://www.npmjs.com/package/bn.js On 2015年3月25日 周三 at 下午8:51 fengmk2 notifications@github.com wrote:
在 es 语言规范里面没有能定下来草案之前,估计科学技术还真没法在 js 语言层面解决了。 目前还只能靠相应的模块解决了。
— Reply to this email directly or view it on GitHub https://github.com/iojs/iojs-cn/issues/144#issuecomment-86035608.
@popomore 这个只是一个高精度整形的实现吧?相当于比 long long
或者 __int64
还要大的整形,差不多就是 Java 里的 bignumber
(Java 盲,勿笑)了。
这样的包应该不少,@rvagg 就有个包 https://www.npmjs.com/package/bignum。
谢谢, 目前这是我最担忧的地方, 希望有个库去劫持修复这个问题 :)
是的,js 语言的缺陷需要从核心优化,不应该转给开发者。不过 iojs 也无能为力,V8到是可以去推进规范,不然他们也不会自己去写库了。 On 2015年3月25日 周三 at 下午9:38 斯人 notifications@github.com wrote:
谢谢, 目前这是我最担忧的地方, 希望有个库去劫持修复这个问题 :)
— Reply to this email directly or view it on GitHub https://github.com/iojs/iojs-cn/issues/144#issuecomment-86055253.
@popomore 问题在于——就算是 C/C++ 的底层的原生浮点数也是如此啊。至于那些底层语言有没有劫持的解决方案我就不清楚了。
这个规范不是 V8 就能推动的了的。
这是 CPU 的问题,不然 Intel 请一帮数学家研究浮点干嘛呢…… 语言当然可以实现高精度,但是效率太低。
@adamme 正解 -。 - 我表达能力不行。
浮点数一直是这样的没办法,这不是 node.js 能够决定的——而是浮点数在内存中的存储状态以及计算方法。可以去看看计算机组成原理或者操作系统等底层的书。