面试题之- null和undefined的区别

前言

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

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

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

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

相关推荐
故事和你91几秒前
洛谷-【图论2-2】最短路1
开发语言·数据结构·c++·算法·动态规划·图论
csbysj20208 分钟前
Git 工作流程
开发语言
mCell12 分钟前
从云相册的缩略图说起:Bun.Image 让我告别 sharp
javascript·图片资源·bun
johnrui23 分钟前
JUC之AQS
java·开发语言·jvm
沫璃染墨32 分钟前
红黑树完全指南:从核心原理到插入验证全实现
开发语言·c++·算法
yu859395833 分钟前
基于 QT5.7.0 的八线激光雷达点云聚类实现
开发语言·qt·聚类
yoyo_zzm43 分钟前
汇编到PHP:五大编程语言核心特性全解析
开发语言·汇编·php
.ZGR.1 小时前
线程池相关知识及并发统计案例实现
java·开发语言
流年如夢1 小时前
初入C++
开发语言·c++
zzzsde1 小时前
【Linux】线程同步和互斥(1):线程互斥与加锁实现
linux·运维·服务器·开发语言·算法