js中的null 和undefined

参考链接:http://blog.csdn.net/qq_26676207/article/details/53100912

http://www.ruanyifeng.com/blog/2014/03/undefined-vs-null.html

http://www.tuicool.com/articles/b6vqmy

关于什么时候会出现null什么时候出现undefined:

这么答:

变量定义未赋值时是undefined,或者是typeof 一个定义为未赋值的变量或没有的定义的变量;

null,表示一个空对象,是原型链的钟点;当释放一个空间时,把变量赋值null;让垃圾回收机制去回收它,typeof null是object;

typeof 返回的是字符串,有六种可能:"number"、"string"、"boolean"、"object"、"function"、"undefined";

未定义的值和定义未赋值的为undefined,null是一种特殊的object,NaN是一种特殊的number。

var a1;
var a2 = true;
var a3 = 1;
var a4 = "Hello";
var a5 = new Object();
var a6 = null;
var a7 = NaN;
var a8 = undefined;
alert(typeof a); //显示"undefined"
alert(typeof a1); //显示"undefined"
alert(typeof a2); //显示"boolean"
alert(typeof a3); //显示"number"
alert(typeof a4); //显示"string"
alert(typeof a5); //显示"object"
alert(typeof a6); //显示"object"
alert(typeof a7); //显示"number"
alert(typeof a8); //显示"undefined"

== 运算符认为 undefined 值等价于 null。

null表示的是一个明确的已经知道的值,是一个空对象

null表示"没有对象",即该处不应该有值。典型用法是:

(1) 作为函数的参数,表示该函数的参数不是对象。

(2) 作为对象原型链的终点。


Object.getPrototypeOf(Object.prototype)
// null 从逻辑角度上来讲,null值表示一个空指针对象
上一篇:js生成qq客服在线代码


下一篇:js和html插件集