关于javascript:js-dy1-感觉需要注意的地方

17次阅读

共计 696 个字符,预计需要花费 2 分钟才能阅读完成。

一、数据类型

1.NaN

 在 js 中,NaN 用来示意一个非数字的非凡值,当发现无奈进行运算时,js 不会报错,而是会返回一个 NaN.

NaN 的注意事项:

  • NaN 的类型是 number 类型的,示意一个非数字
  • NaN 不等于任何值,包含 NaN 自身
  • 通过 isNaN() 能够判断是否是一个数字,返回 false 的时候,示意是一个数字。

2. 小数

问题:

 计算机中的小数在进行运算的时候,有时会碰到小数点精度不精确的景象 

起因:

 计算机外部所能辨认的数据只有二进制,当咱们进行 10 进制数字运算的时候,在计算机外部须要先将数据转为 2 进制,而后运算,再将后果转为 10 进制给进去。10 进制的小数进行 2 进制转换的时候,依据转换规则,有些小数会进行有限死循环,最终在前面数字太多的时候只能四舍五入,所以其实最终并没有很准确的转为 2 进制,所以只能给出一个大略的值。有时候会有两个大略的值相加,在转换 10 进制的时候正好能转换了,也会计算的比拟精准。

解决办法:

// 1. 依据小数点前面的位数量 乘以对应的整数;
0.1 + 0.2  ==> (0.1*10+0.2*10) / 10 = 0.3
// 2. 应用 toFixed 工具强制保留小数点后位数
var a = 0.1 + 0.2
console.log(a.toFixed(3)) // 0.300

3. 类型问题

问题:

 有的时候数据类型不是本人想要的类型,如:prompt 输出的内容不是数字型,这个时候想要进行计算就会发现无奈计算。

解决办法:转换数据类型

1. 强行转换语法,语法: 数据类型(数据)
2. 应用函数强制转换为数字,语法:

parseInt(arg) # 强制转换为整数
parseFloat(arg) # 强制转换为小数 

3. 数学运算时转换为数字型

正文完
 0