JavaScript中undefined 和 null 的区别

JavaScript中undefined 和 null 的区别

nullundefined 之间有几个区别,有时被理解为相同。

定义:

  • null - null 是故意不存在的值, null 是JavaScript的原始值之一。
  • undefined - undefined 意味着该值在编译器中不存在, undefined 是全局对象。

类型:

  • null - Object
  • undefined : undefined

参考值比较:

 null == undefined // true
 null === undefined // false

这意味着 null 等同于 undefined ,但不完全相同。

当把一个变量定义为 undefined 时,想表达的是这个变量不存在。当将一个变量定义为 null 时,想表达的是该变量是空的。

使用 isNaN() 进行区分 –

isNaN(2 +  null)      // false
isNaN(2 + undefined) // true

null示例:

null ? console.log("true") : console.log("false") // false

null 也被称为 false

nudefined:

当变量没有被分配一个值时 –

var temp;
if(temp === undefined)
console.log("true"); // 输出
else
console.log("false");

访问不存在的值:

var temp=['a','b','c'];
if(temp[e] === undefined) //输出这里
console.log("true");
else
console.log("false");

下面以表格的形式来看看其中的区别:

NO. nudefined NULL
1 nudefined 属性表示一个变量根本就没有被声明。 null 值表示没有任何对象值。
2 nudefined 是ECMAScript1(ES1)的一个特征。 null 是Javascript中的原始值。
3 nudefined 支持的浏览器有:Chrome , Microsoft Edge , Internet Explorer , Firefox , Safari , Opera Mini。 null 的语法: null
4 nudefined 是一个全局属性。 null 支持的浏览器有:Chrome , Microsoft Edge , Internet Explorer , Firefox , Safari , Opera Mini

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程