怎样理解undefined和 null

Posted aisowe

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了怎样理解undefined和 null相关的知识,希望对你有一定的参考价值。

前言: undefined表示 "未定义", null 表示 "空"

第一步: 一般在变量或属性没有声明或者声明以后没有赋值时, 这个变量的值就是undefined;

typeof a; // "undefined";

var b;
typeof(b); // "undefined";

var c = {};
typeof(c.name); // "undefined";

 

第二步: null是检测变量指向的内存地址是否存在, 即: 如果变量不指向任何一个内存地址, 则返回null.

document.getElementById("fasdf")
// null
Object.prototype.__proto__;
// null

  

注意:

null 和 undefined 都是基本类型, 使用instanceof检测类型时都会返回false; 但null非常特殊, 使用typeof去判断时会返回object, 但是有instanceof判断时又会返回false; 一般判断某个变量是否为null, 使用的是: null === null;

null instanceof Object; // false
undefined instanceof Object; // false

typeof null; // "object";
typeof undefined; // "undefined";

 

以上是关于怎样理解undefined和 null的主要内容,如果未能解决你的问题,请参考以下文章

JavaScript中对null和undefined的理解

深入理解javascript之null和undefined

来理解undefined 和 null 区别

简单理解undefine和null的区别

深入理解javaScript的深复制和浅复制

Null 和 Undefined