关于if(xx)和 a==b的判断问题

if语句

javascript的if语句写法为

if(condition){
}

编写代码时应该将condition写为""===""形式,避免在阅读代码时引起麻烦。
当condition不标准时我们也应该学会去判断。
if语句会使用ToBoolean的强制方法将conditoion转换成布尔值,转换方法如下:

  1. 参数类型为undefined时转换为false
  2. 参数类型为null时转换为false
  3. 参数类型为number时,如果值为+0,-0,NaN时为false,其它为true
  4. 参数类型为string时,空字符串为false,其余为true
  5. 参数类型为object时,为true。

== 运算符

一般不建议用==,而是用===
== 运算符通常在比较之前会将两边的值转换成相同数据类型(通常是number)。
x == y的比较标准为:

  1. undefined == null为true
  2. xy同类型时与===一样
  3. string与数字比较时,转换为数字,如果string不能转为数字则为NaN
  4. bool类型true为1,false为0
  5. 当object与string或数字比较时,先考虑valueOf,再考虑toString.
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 第2章 基本语法 2.1 概述 基本句法和变量 语句 JavaScript程序的执行单位为行(line),也就是一...
    悟名先生阅读 4,207评论 0 13
  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 134,986评论 19 139
  • 什么是 JavaScript 语言? JavaScript 是一种轻量级的脚本语言。所谓“脚本语言”(script...
    oWSQo阅读 1,826评论 0 1
  • 没想到 图画书 原来也可以写得 如此动人 只可惜 写出这故事的人 是说英语的 哼
    牧马天山阅读 145评论 1 2
  • 最近突然会产生很多稀奇古怪的ideas,身体里有一股力量在指引着我前进,想大口的呼吸大声的呐喊大力的汲取知识,开始...
    一点冰美式阅读 147评论 0 0