=是 赋值操作符。执行顺序是从右到左, 比如 a = b = c,先执行 b = c,再执行 a = b。结合其它算术运算符就是复合赋值运算符比如: +=,-=,*=。a += b 等价于 a = a + b,其它复合赋值运算符类似。
==在 js 中叫 不严格等于。和其它语言不一样,其它语言比如 java 中的 == 和 js 中的 === 更像。js 中的 == 也是用来比较左右操作数是否相等,但是它在比较时会自动进行类型转换,不严格。举个例子 '' == false 返回的结果是 true,左右都被转换成数字进行比较 Number('') 和 Number(false) 都返回 0,所以相等。
===在 js 中叫 严格等于。没什么可说的,就是严格比较左右两个操作数的相等性,0 === false 结果是 false。
建议:平时编码应该尽量使用
===而不是
==避免因为自动类型转换带来的逻辑 bug。



