Number() 它 是按照浏览器从底层机制,把其它数据类型转换为数字
-字符串:看是否包含非有效数字,包含的结果就是NaN '' -->0
-布尔: true-->1 false --> 0
-null :0
-undefined: --->NaN
引用数据类型都要先转换为字符串在转换为数字
{} /正则/函数等。 ---NaN
[] ---> '' 0
[12] ---'12' ---12
[12,23]--12,23----NaN
2 parseInt()/parsefloat() 遵循按照字符串从左到右查找的机制 有效数字(所以传递的值一定是 字符串,不是也是要换为字符串)
之后在查找。
========vs ======
==。与 ===
==:相等,数据 类型不同,先转换为一样的在比较
=== :绝对相等,必须类型和值都相同才相等。
switch :中的判断中,每一种 case 的比较 都是基于 === 来完成的。
=============================
let i = '10';
i = i + 1; ==>'101'
i+=1 ==> '101';
i++ 跟以上两种,不完全相同,它是纯粹的数学运算。
============================
> i++ 和 ++i 都会使数学运算中的累加 1 ,区别 是计算的顺序。
5 + (i++)‘===>6
5 + (++ i) ====>7