2026-05-15#
Data: 2026-05-15 23:15:02
今天给大家推荐 1 个 js 库。
首先是一个我最近才知道的,很迷你简单,只有 1kb 的一个但是让我相见恨晚的库。
这个库在 AI 时代也有用,就是写到 agent md 或者 claude md 文件里,让 ai 引用,然后之后就不用担心后续业务出现数值精度问题了。在此之前,我的 AI 写的代码里这种精度问题还是会出现的。
就是 number-precision.js ,它专门解决最为恼人的 JS 里的精度问题。
仓库地址是: https://github.com/nefe/number-precision
就是说,比如在 js 里, 0.1 + 0.2 ,它的结果不是 0.3 ,而是 0.30000000000000004 !
我其实有业务在做 3D 相关的内容,这个丧心病狂的特性(bug),可让我没少疯狂。有时候我甚至使用这种奇淫技巧:先乘100 运算完了之后除100… 但你知道,这兼容性太差了。
我当然知道 toFixed 的四舍五入,但是它本质上是个【四舍五入】工具,并不是解决底层计算的精度误差的!后续的运算,依然还有误差。
当然过去我知道有 math.js 和 decimal.js 这种专业的数学领域的库。不过有几十 kb 几百 kb 的体积,一般来说 toFixed 能解决的我就不管了,单独为了几个函数的运算,引入一个全能工具包,不太环保。
当然,也有个 6kb 的 big.js 库,可以解决大数字计算,也能改善这个问题。
但是昨天发现的 number-precision.js ,只有 1kb ,仅提供加减乘除、四舍五入基础功能,无多余,非常适合我这种简单业务的广泛使用!短小精悍!(看了下作者,作者是知乎大佬 shaoyin ,阿里巴巴前端工程师)。
使用很简单,直接 import NP from ’number-precision’ ,在代码里使用,比如加 ,就 NP.plus(0.1, 0.2); 就行。