日期:2014-05-16  浏览次数:20414 次

js中的 if (val[1]===this.undefined) 和 if (val[1]== "yes") 中的 三个等于 和 两个等于有什么区别?
js中的 if (val[1]===this.undefined) 和 if (val[1]== "yes") 中的 三个等于 和 两个等于有什么区别?

------解决方案--------------------
===是恒等于 JavaScript 是弱类型语言,这就意味着,等于操作符会为了比较两个值而进行强制类型转换
而恒等于不像普通的等于操作符,不会进行强制类型转换,
而对于对象,当用恒等于的时候,用于判断是否是同一个对象而不是单纯的判断值是否相等。所以,以后要注意了。判断的时候尽量还是使用恒等于,这样不用进行强制转换比较


------解决方案--------------------
"1"===1 //false
"1"==1 //true