《JavaScript重难点实例精讲》— 基本数据类型【undefined null boolean】

《JavaScript重难点实例精讲》— 基本数据类型【undefined null boolean】

xiaolu
2022-02-06 / 0 评论 / 37 阅读 / 正在检测是否收录...
温馨提示:
本文最后更新于2022年02月07日,已超过141天没有更新,若内容或图片失效,请留言反馈。

在JavaScript中,数据类型可以分为基本数据类型和引用数据类型,其中基本数据类型包括 Undefined、Null、Boolean、Number、String 5种,在 ES6 中新增了一种新的基本数据类型 Symbol,这个会在第 7 章中讲到;引用数据类型含有 Object、Function、Array、Date等类型,这些将会在第 2 章和第 3 章重点讲解。

——《JavaScript重难点实例精讲》


undefined 类型

undefined 是挂载于 window (浏览器) 或 global (NodeJS) 下的全局变量,并 不是 JS 中的关键字,常见于以下几处场景:

声明未赋值

var a;
console.log(a); // undefined

访问不存在的对象属性

var person = { name: 'xiaolu' };
console.log(person.age); //undefined

函数无返回值

function compute() {};
var result = compute();
console.log(result); // undefined

传参数量少于形参数量

function compute(pm1, pm2){
  console.log(pm2); // undefined
}
compute(10);





null 类型

null 类型表示一个空指针 对象 , typeof null === 'object' 的结果是 true, 常见于以下场景:

声明时暂不指定类型

var person = null;
function compute() {
  return 100;
}
person = compute();

未获取到指定 DOM 元素

document.getElementById('main'); // undefined

正则表达式没有捕获到结果

/\d+/.exec('something'); // null
'something'.match(/\d+/); // null

一些需要注意的点

隐式类型转换

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

typeof 运算

typeof undefined // undefined
typeof null // object

数值运算

undefined + 0 // NaN
null + 0 // 0

字符串运算

undefined + ' string' // 'undefined string'
null + ' string' // 'null string'

调用 toString()

Object.toString.call(undefined) // '[object Undefined]'
Object.toString.call(null) // '[object Null]'





boolean 类型

boolean 有两个字面量 truefalse , 且区分大小写, 重点是其他类型同 boolean 类型的转换

0

评论 (0)

取消