the important thing is not to stop questioning

导航

 

1、为什么既然存在等号(==)非等号  (!=),又会有全等号(===)非全等号(!==)?

*唯一的不同是后者判断时不进行类型转换。

例:var sNum = "66"; var iNum = 66; alert(sNum == iNum); //输出 "true" alert(sNum === iNum); //输出 "false"

2、为什么typeof null返回"Object"

*这是最初的错误,现在null被认为是对象的占位符

3、undefined与null

*声明变量但未赋值的是undefined,找不到对象是null。如果函数或方法要返回的是对象,那么找不到该对象时,返回的通常是 null

*值 undefined 实际上是从值 null 派生来的,因此 ECMAScript 把它们定义为相等的。

alert(null == undefined);  //输出 "true"

尽管这两个值相等,但它们的含义不同。undefined 是声明了变量但未对其初始化时赋予该变量的值,null 则用于表示尚未存在的对象。如果函数或方法要返回的是对象,那么找不到该对象时,返回的通常是 null。

4、如何判断数字是否为无穷大或无穷小,是否为非数?

*isFinite(),isNaN()

posted on 2016-02-25 15:34  qook  阅读(134)  评论(0编辑  收藏  举报