当前位置: 首页 >文章 > JavaScript - undefined类型
收藏
分享

JavaScript - undefined类型

举报李游Leo李游Leo发布于 2021-05-05960阅读2点赞
在 JavaScript 中的官方定义里面 undefined 属性是用于存放 JavaScript 中未定义的值...

很多的书籍中喜欢把undefined和null一起去讲解,在这小节中,我们把它们俩分开的去进行讲解,然后我们在进行总结。

在 JavaScript 中的官方定义里面 undefined 属性是用于存放 JavaScript 中未定义的值。如果简单来说呢,如果我们声明了一个变量并赋值为 undefined 的话,那么这个变量目前已经存在东西了,只不过我们没有更深层的去设定这个变量到底具体为哪种类型而已。

如果用一个生活中的例子来比喻的话,更像是我拿出来一个礼物盒子,我只告诉你里面有我给你的惊喜,但是到底这个盒子里面具体是什么?我并没有告诉你,所以盒子里面可能是玩具、书籍、或者其它可以放进盒子里面任何东西。

而 undefined 其实就是类似我给你的盒子里面的东西,你无法判定它具体是哪一个数据类型,因为咱们只是指定了变量有个这样的值而已,并没有具体定义到底是什么值,也就是所谓的未定义。

Undefined 在官方的解释除了为未定义之外,也是有未初始化这个概念的。它是变量的一种取值,表示变量还没有初始化。而且如果要查询对象属性或者数组的值时返回undefined时则说明这个属性或元素并不存在。函数的返回值也和它有关,如果没有设定其返回值(return) 的话,那么默认也是返回undefined。函数中如果没提供实参的形参的值也会只得到undefined。

undefined也是预定义的全局变量,这一点和null不一样,它并不是关键字,它的值就是“未定义”。在ECMAScript 3中,undefined是可读/写的变量,我们甚至可以给它进行赋值任意内容。不过这明显就是一个官方BUG,这个问题在ECMAScript 5中做出了修正,undefined在该版本中就只是可读的了。不过虽然如此,我们还是可以对其进行赋值,不过只是不起作用罢了。

如果我们使用typeof对其查询,会得到字符串“undefined”,也是undefined类型,表明这个值是 JavaScript 类型成员的一员,并且是该类型的唯一成员。







本文原创,未经作者允许不可转载!

更多内容,欢迎关注作者微信公众号:李游Leo老师前端讲堂!


0条评论
别默默看啦~登录/注册一起参与讨论吧~

暂无评论

请选择举报理由

违反法律法规

侵犯个人权益

有害网站环境

更多训练营>>

为你推荐 · 训练营(全勤打卡报名费全额返累计全额返用户133,637人)

电商海报设计训练营
距离开班仅剩19天45人已报名
【5月】零基础手绘插画训练营
距离开班仅剩19天23人已报名
【5月】零基础动态表情包创作训练营
距离开班仅剩36天7人已报名
特惠
充值
7折购
今日还在继续学习的你,太棒了!
7
折扣券可用于
年费无限VIP
立 即
使 用
此活动优惠不可与其他活动叠加使用
有效期:000000
消息
登录即可查看消息记录
建议
意见
官方
客服
在线咨询客服热线

您可以与在线客服进行沟通获得帮助

工作日:9:00~22:00节假日:9:00~18:00

联系在线客服

您可以电话联系客服进行沟通获得帮助

工作日:9:30~18:30

400-862-9191
虎课
积分
免费学习89000+个教程!
配套素材、源文件一键下载!
昨日学员已学习了46,261
并提交了234份作业!
登录后立即学习!
loading
微信扫码关注即可登录
您需要同意协议才可以进行登录
登录虎课网,每天免费学课程全站 89000+ 视频会员教程 | 每日可免费学 1
为确保账户信息安全
请先进行真实姓名验证后进行充值付款
立即验证