面试题之- null和undefined的区别

前言

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

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

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

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

相关推荐
SuperEugene4 分钟前
NPM Script 实战:常用命令设计与封装|Vue 工程化篇
前端·javascript·vue.js·前端框架·npm
XiYang-DING4 分钟前
【Java SE】Java代码块详解
java·开发语言·python
摇滚侠7 分钟前
Java SpringBoot 项目,项目启动后执行的方法,有哪些方式实现
java·开发语言·spring boot
Dragon Wu18 分钟前
Taro 小程序开发注意事项(不定期记录更新)
前端·javascript·小程序·typescript·taro
艾莉丝努力练剑18 分钟前
【Linux进程间通信:共享内存】为什么共享内存的 key 值由用户设置
java·linux·运维·服务器·开发语言·数据库·mysql
wangfpp20 分钟前
多端统一你真的会了吗?
前端·javascript·架构
Reisentyan23 分钟前
GoLang Learn Data Day 0
开发语言·rpc·golang
Chengbei1125 分钟前
AI 自动逆向 JS 加密!自动抓密钥、出报告,彻底解放双手,解决抓包数据包加密难题
开发语言·javascript·人工智能·安全·网络安全·网络攻击模型
天若有情67327 分钟前
【实战】从零开发企业级 B 端风格字符串值管理系统(Python+MySQL)
开发语言·python·mysql·企业级应用·b端应用
wjs202428 分钟前
Bootstrap5 下拉菜单详解
开发语言