(转)Javascript中==和===的区别

一、JavaScript"=="的作用

  1. 当==两边的内容是字符串时,则比较字符串的内容是否相等。
  2. 当==两边的内容是数字时,则比较数字的大小是否相等。
  3. 当==两边的内容是对象或者是对象的函数属性时,则比较内存地址是否相等

二、==和===的区别

  ==用于一般比较,===用于严格比较,==在比较的时候可以转换数据类型,===严格比较,只要类型不匹配就返回flase

举例说明:

复制代码
1  <script type="text/javascript">
2     alert("\"1\"==true的结果是:"+("1"==true));
3     alert("\"1\"===true的结果是:"+("1"===true));
4     alert("\"1\"==1的结果是:"+("1"==1));
5     alert("\"1\"===1的结果是:"+("1"===1));
6  </script>
复制代码

  "1" == true类型不同,"=="将先做类型转换,把true转换为1,即为 "1" == 1;此时,类型仍不同,继续进行类型转换,把"1"转换为1,即为 1 == 1;此时,"==" 左右两边的类型都为数值型,比较成功!

  "1" === true 左侧为字符型,右侧为bool布尔型,左右两侧类型不同,结果为false;

  "1" === 1 左侧为字符型,右侧为int数值型,左右两侧类型不同,结果为false;

运行结果:

总结:

  ==和===的区别:"==" 只要求值相等; "===" 要求值和类型都相等

转:http://www.cnblogs.com/xdp-gacl/p/3668426.html

posted @ 2017-03-29 17:42  Christal_11  阅读(105)  评论(0编辑  收藏  举报