面试题之- null和undefined的区别

前言

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

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

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

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

相关推荐
暗冰ཏོ2 分钟前
2026前端开发资源整理大全:从基础学习到工程化实战的完整导航
前端·javascript·css·前端框架·html
ftpeak18 分钟前
深入浅出 LoongSuite Python Agent:让你的 AI 应用「透明化」(下篇)
开发语言·人工智能·ai·ai编程·ai开发
希望永不加班25 分钟前
SpringBoot 消息幂等性设计:防重复消费
java·开发语言·spring boot·后端·spring
l1t25 分钟前
DeepSeek总结的使用实体-组件-系统和基于存在性处理进行Python编程7-8
开发语言·python
我是一颗柠檬25 分钟前
【JDK8新特性】CompletableFuture异步编程Day10
java·开发语言·后端·intellij-idea
czt_java38 分钟前
线程的几种状态
java·开发语言
y = xⁿ43 分钟前
JUC八股:线程池及ThreadLocal
java·开发语言
01_ice1 小时前
Java多态
java·开发语言
AI人工智能+电脑小能手1 小时前
【大白话说Java面试题 第78题】【Mysql篇】第8题:解释下最左前缀原则?
java·开发语言·数据库·mysql·面试
HackTwoHub2 小时前
AI赋能Chrome MCP × JS逆向Skill自动化JS逆向挖洞
javascript·人工智能·chrome·安全·web安全·网络安全·自动化