面试题之- null和undefined的区别

前言

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

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

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

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

相关推荐
我要升天!6 分钟前
QT -- 网络编程
c语言·开发语言·网络·c++·qt
Unlyrical12 分钟前
为什么moduo库要进行线程检查
linux·服务器·开发语言·c++·unix·muduo
GIS阵地12 分钟前
Qt实现简易仪表盘
开发语言·c++·qt·pyqt·qgis·qt5·地理信息系统
天天摸鱼的小学生18 分钟前
【Java Enum枚举】
java·开发语言
阿猿收手吧!21 分钟前
【C++】cpp虚函数和纯虚函数的声明和定义
开发语言·c++
q_302381955626 分钟前
Python实现基于多模态知识图谱的中医智能辅助诊疗系统:迈向智慧中医的新篇章
开发语言·python·知识图谱
四眼肥鱼34 分钟前
全网最全的 qiankun 基于 react18+(主应用)、vue3.4+(微应用)实现页签缓存,页面缓存
前端·javascript
梨落秋霜39 分钟前
Python入门篇【输入input】
开发语言·python
wen-pan41 分钟前
Go 语言 GMP 调度模型深度解析
开发语言·go
Buxxxxxx1 小时前
DAY 34 模块和库的导入
开发语言·python