面试题之- null和undefined的区别

前言

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

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

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

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

相关推荐
Eider19989 分钟前
python基础语法之并发基础练习
开发语言·python
#麻辣小龙虾#14 分钟前
网页布局css中flex+margin的组合布局技巧
开发语言·前端·javascript
云和数据.ChenGuang17 分钟前
python和java的try
java·开发语言·python
我是唐青枫17 分钟前
Kotlin Inheritance(继承)详解:语法、原理、实战 Demo
开发语言·kotlin
ly768928 分钟前
从 OpenAPI 到多语言 SDK 生成:Java 服务端契约漂移与生成器版本治理
java·开发语言·openapi·java 21·版本兼容·契约漂移·sdk 生成
lqbzlll42 分钟前
CVE-2026-91403 排查指南:Java JSSE 信任链漏洞的根因、影响范围和修复步骤
java·开发语言·信任链
CarIise1 小时前
AOP 概念的引入
java·开发语言
凉茶钱1 小时前
多态:从虚函数语法到虚表寻址,一次讲透动态绑定
开发语言·c++·多态
Hello.Reader1 小时前
Three.js / Cesium 卡顿怎么办?把三维渲染搬到 GPU 服务器
服务器·开发语言·javascript
chi11301 小时前
【无标题】
前端·javascript·python