JavaScript 的基本类型有哪些?常用引用类型有哪些?null 和undefined 的区别

JavaScript 的基本类型有哪些?常用引用类型有哪些?null 和undefined 的区别

基本数据类型

基本数据类型有这五种:Number 数字型 String 字符串型 Boolean 布尔型  Undefined 未定义型  Null 空类型
复制代码

引用数据类型(常用)

引用类型有这几种:object 对象  array 数组  function 函数   
复制代码

null 和undefined 的区别

1.类型的区别

console.log(typeof(undefined));  //undefined
console.log(typeof(null));       //object
console.log(null==undefined);    //true
console.log(null===undefined);   //false
复制代码
为什么 console.log(typeof(null));       //object
复制代码

—–这是因为es设计时认为,null表示空对象指针,只不过值为空,但是代码执行时会正常站位;所以用typeof的时候,会返回”object”。所以一般都会把null当做空对象的占位符。

null在最初的设计为装换类型时,可转换为0;而undefined为NaN

console.log(Number(null));   //0
​
console.log(Number(undefined));   //NaN
复制代码

2.目前的用法

目前,null和undefined基本是同义的,只有一些细微的差别。

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

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

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

Object.getPrototypeOf(Object.prototype)   // null
复制代码

undefined表示”缺少值”,就是此处应该有一个值,但是还没有定义。典型用法是:

变量被声明了,但没有赋值时,就等于undefined。

调用函数时,应该提供的参数没有提供,该参数等于undefined。

对象没有赋值的属性,该属性的值为undefined。

函数没有返回值时,默认返回undefined。

对象属性名不存在时,显示undefined

© 版权声明
THE END
喜欢就支持一下吧
点赞0 分享