JS == 和===的区别

强制类型转换:
字符串转整数可以使用: parseInt()
字符串转小数可以使用: parseFloat()

**[html]** [view plain](http://blog.csdn.net/baoendemao/article/details/52723869#) [copy](http://blog.csdn.net/baoendemao/article/details/52723869#)
 [![在CODE上查看代码片](https://code.csdn.net/assets/CODE_ico.png)](https://code.csdn.net/snippets/1910438)[![派生到我的代码片](https://code.csdn.net/assets/ico_fork.svg)](https://code.csdn.net/snippets/1910438/fork)

  
  
  
      
    Title  
      
  
  
      
      
      
      
  
  

隐式类型转换:

**[html]** [view plain](http://blog.csdn.net/baoendemao/article/details/52723869#) [copy](http://blog.csdn.net/baoendemao/article/details/52723869#)
 [![在CODE上查看代码片](https://code.csdn.net/assets/CODE_ico.png)](https://code.csdn.net/snippets/1910438)[![派生到我的代码片](https://code.csdn.net/assets/ico_fork.svg)](https://code.csdn.net/snippets/1910438/fork)

  
  
  
      
    Title  
      
  
  
  
  

**[html]** [view plain](http://blog.csdn.net/baoendemao/article/details/52723869#) [copy](http://blog.csdn.net/baoendemao/article/details/52723869#)
 [![在CODE上查看代码片](https://code.csdn.net/assets/CODE_ico.png)](https://code.csdn.net/snippets/1910438)[![派生到我的代码片](https://code.csdn.net/assets/ico_fork.svg)](https://code.csdn.net/snippets/1910438/fork)

  
  
  
      
    Title  
      
  
  
  
  

==和===的区别:

false == 0; // truefalse === 0; // false

要特别注意相等运算符==
。JavaScript在设计时,有两种比较运算符:
第一种是==
比较,它会自动转换数据类型再比较,很多时候,会得到非常诡异的结果;
第二种是===
比较,它不会自动转换数据类型,如果数据类型不一致,返回false
,如果一致,再比较。

由于JavaScript这个设计缺陷,不要使用==
比较,始终坚持使用===
比较。

另一个例外是NaN
这个特殊的Number与所有其他值都不相等,包括它自己:

NaN === NaN; // false

唯一能判断NaN
的方法是通过isNaN()
函数:

isNaN(NaN); // true

你可能感兴趣的:(JS == 和===的区别)