你知道javascript中的“===”怎么用吗?
换句话说,可能在你的编程中,你可能用过这些代码片段吧:
if (x == y) {
// do something here
}
或者你使用最佳实践方式:
if (x === y) {
// do something here
}
转载请注明出处:百合娱乐城http://is14z.biz</br>大佬娱乐城http://ay2nn.com</br>王牌娱乐城http://cy6gi.biz</br>新亚洲娱乐城http://mk1wv.com</br>KK娱乐城http://lc7ga.biz</br>米兰娱乐城http://fu4sj.com</br>牡丹娱乐城http://uv31v.biz</br>太子娱乐城http://bj1tx.com</br>新锦江娱乐城http://ic15n.biz</br>金字塔娱乐城http://yp8te.com</br>以上代码片段中不同的地方在于第二个例子使用了“===”操作符,也叫“严格等于”或者“绝对等于”。
有没有区别?
使用双等于号操作符的话,如果两者相等的话,结果会返回true。但是大家要注意:如果是不同类型的变量比较的话,变量强制变换就会发生。当然,这也是javascript语法的特点之一。
这将会带来不可预知的结果,如下:
console.log(99 == "99"); // true
console.log(0 == false); // true
当然,以上例子非常不错,因为浏览器将帮助你自动转化,省了你不少劲儿。但是这有可能出错,如下:
console.log(' \n\n\n' == 0); // true
console.log(' ' == 0); // true
因为如上原因,javascript的高手都推荐你使用“===”来执行等于操作。永远不要使用“==”。
以下例子将都产生正确的结果:
console.log(99 === "99"); // false
console.log(0 === false); // false
console.log(' \n\n\n' === 0); // false
console.log(' ' === 0); // false
不等于如何操作呢?
类似,只不过这里我们使用“!==”来执行。如下:
console.log(99 !== "99"); // true
console.log(0 !== false); // true
console.log(' \n\n\n' !== 0); // true
console.log(' ' !== 0); // true