js parseInt()bug 或者说 注意事项

parseInt(stringradix) 解析一个字符串并返回指定基数的十进制整数

这是定义 所以用这个函数取整 需要特别注意,因为第一个参数是字符串 

例如

parseInt(5.960464477539062e-7)
输出5 而不是0

所以需要使用  Math.floor 替代

2.网上有2种说法

1.js只有一种number 类型 就是 64位浮点数

2.在JS中无论是整数还是小数都是按照64位的浮点数形式存储,而整数运算会自动转化为32位有符号整数。

测试结果 js 1 正确

扫描二维码关注公众号,回复: 16732557 查看本文章
10/16777216 //5.960464477539062e-7
46777215 / 2 //23388607.5
10*16777215 //167772150
16777210 + 16777210 //16777210 + 16777210
16777210 *3 //50331630

猜你喜欢

转载自blog.csdn.net/tangshangkui/article/details/130762855