面试题之- null和undefined的区别

前言

首先undefinednull都是基本数据类型,这两个基本数据类型分别都只有一个值,就是undefinednull

undefined代表的含义是未定义null代表的的含义是空对象,一般变量声明了但是还有没有定义的时候会返回undefined,null主要用于赋值给一些可能会返回对象的变量,作为初始化。

undefined在JS中不是一个保留字,着意味着可以使用undefined来作为一个变量名,但是这样的做法是非常危险的,它会影响对undefined值的判断,我们可以通过一些方法获得安全的undefined值,比如说void 0 。

当对这两种类型使用typeof进行判断时, undefined 返回undefinednull类型化会返回"object",这是一个历史遗留问题,当使用双等号对这两种类型的值进行比较时会返回true,使用三个等号时会返回false

相关推荐
源猿人14 小时前
企业级文件浏览系统的Vue实现:架构设计与最佳实践
前端·javascript·数据可视化
RoyLin14 小时前
TypeScript设计模式:迭代器模式
javascript·后端·node.js
小桥风满袖16 小时前
极简三分钟ES6 - ES9中for await of
前端·javascript
编程贝多芬16 小时前
Promise 的场景和最佳实践
前端·javascript
Asort16 小时前
JavaScript 从零开始(四):基础语法详解——从变量声明到数据类型的完全指南
前端·javascript
木木jio16 小时前
前端大文件分片上传 —— 基于 React 的工程化实现
前端·javascript
Lotzinfly16 小时前
12个TypeScript奇淫技巧你需要掌握😏😏😏
前端·javascript·面试
一个大苹果16 小时前
setTimeout延迟超过2^31立即执行?揭秘JavaScript定时器的隐藏边界
javascript
普郎特16 小时前
"不再迷惑!用'血缘关系'彻底搞懂JavaScript原型链机制"
前端·javascript
侃侃_天下17 小时前
最终的信号类
开发语言·c++·算法