javascript中的undefined和null有什么区别

javascript中的undefined和null的区别有:类型不同前者返回的是未定义值后者是对象;转换原始类型方式不同前者是不支持转换后者值为0大多数使用JavaScript的人都会误解null和undefined之间的关系,这两个实体之间的关系不明确会导致严重问题。今天将要为大家分享如何区别null与undefined,具有一定的参考作用,希望对大家有所帮助

JavaScript中的 Null值

null是JavaScript中的一个关键字,表示没有值或者是任何值都不存在。比如我们想将变量从指定值中删除我们就可以简单的指定其值为null。除此之外,与其他任何对象一样永远不会被JavaScript隐式赋值给变量。例:

var demo= null;

console.log(demo)

javascript中的undefined和null有什么区别

JavaScript中的undefined

undefined是JavaScript在运行时创建的全局变量,在下列情况之一中将此全局变量分配给对象

1、已声明但未初始化或定义的对象

2、不存在的数组索引或对象属性

3、未提供的功能参数

4、必须但不返回值的函数的返回值

var demo;

console.log(demo)

javascript中的undefined和null有什么区别

undefined与null之间的区别

1、null和undefined的类型不同

console.log(typeof(undefined)); //undefined

console.log(typeof(null)); //object

null是一个具有有效不存在值的对象,并且它是不可变的,而undefined的对象类型是本身未定义的

此外任何具有null值的算术运算都将产生整数值,而任何带有undefined的算术运算都会导致变量值变为NaN

2、转换为原始类型的方式不同

null和undefined之间的主要区别在于它们被转换为原始类型的方式。在null上执行算术转换时,确定的值为0可以使用以下代码片段验证此转换。

var v1= 5+ null;

console.log(v1)

输出结果为5

但是undefined不执行任何此类转换,如果将undefined添加到数字中得出的结果将为NaN

var v2= 5+ undefined;

console.log(v2)

输出的结果为NaN

总结:以上就是本篇文章的全部内容了,希望对大家有所帮助。

相关推荐