js中的null 和undefined
Posted 土豆zhang
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了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中的null 和undefined的主要内容,如果未能解决你的问题,请参考以下文章
浅谈JS中的!=== !=====的用法和区别 JS中Null与Undefined的区别 读取XML文件 获取路径的方式 C#中Cookie,Session,Application的(代码