前端技术

当前位置:首页 > 前端技术 >

JS中双等号“==”和三等号“===”的区别

时间:2015-06-25        阅读:次        QQ群:182913345

        我们会在一些代码中看到遇到“===”和“==”的写法,三等号与双等号有什么不同吗?在JavaScript中,===表示“恒等于”,==表示“等于”。=表示“赋值”。

        ?=:赋值,在逻辑运算时也有效;
        ?==:等于运算,但是不比较值的类型;
        ?===:完全等于运算,不仅比较值,而且还比较值的类型,只有两者一致才为真。
        运行体会一下以下的代码就会清楚了:

        alert(0 == ""); 		// true
        alert(0 == false); 		// true
        alert("" == false); 	// true
        alert(0 === ""); 		// false
        alert(0 === false); 	// false
        alert("" === false);	// false

        JavaScript 是弱类型语言,这就意味着,等于操作符会为了比较两个值而进行强制类型转换。注意0的相等运算,例如:

        ""      ==   "0"           // false
        0       ==   ""            // true
        0       ==   "0"           // true
        false   ==   "false"       // false
        false   ==   "0"           // true
        false   ==   undefined     // false
        false   ==   null          // false
        null    ==   undefined     // true
        " \t "  ==   0             // true
 
        而恒等于不像普通的等于操作符,不会进行强制类型转换。这样的话上述的结果就不太相同了:

        ""      ===   "0"           // false
        0       ===   ""            // false
        0       ===   "0"           // false
        false   ===   "false"       // false
        false   ===   "0"           // false
        false   ===   undefined     // false
        false   ===   null          // false
        null    ===   undefined     // false
        " \t "  ===   0             // false

上一篇:CSS border-radius 圆角效果

下一篇:HTML meta viewport属性说明

扫一扫,更多精彩内容推送

PHP技术分享

分享PHP技术,前端技术,数据库,SEO优化,服务器,网络安全等知识,是php程序员工作学习的好帮手!

Copyright © 2013-2015.PHP技术分享 www.php520.cn  版权所有  网站地图    PHP学习交流群

免责声明:网站内容收集于互联网,本网站不承担任何由于内容的合法性及健康性所引起的争议和法律责任。

欢迎大家对网站内容侵犯版权等不合法和不健康行为进行监督和举报。 沪ICP备15014499号-2