前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >选择篇(017)-哪个选项是不正确的?

选择篇(017)-哪个选项是不正确的?

作者头像
齐丶先丶森
发布2022-05-12 21:31:17
1.3K0
发布2022-05-12 21:31:17
举报
文章被收录于专栏:前端面试秘籍前端面试秘籍
代码语言:javascript
复制
const bird = {
  size: "small"
};

const mouse = {
  name: "Mickey",
  small: true
};
  • A: mouse.bird.size
  • B: mouse[bird.size]
  • C: mouse[bird["size"]]
  • D: All of them are valid
答案: A

JavaScript中,所有对象键都是字符串(除了Symbol)。尽管有时我们可能不会给定字符串类型,但它们总是被转换为字符串。

JavaScript解释语句。当我们使用方括号表示法时,它会看到第一个左括号[,然后继续,直到找到右括号]。只有在那个时候,它才会对这个语句求值。

mouse [bird.size]:首先它会对bird.size求值,得到smallmouse [“small”]返回true

但是,使用点表示法,这不会发生。 mouse没有名为bird的键,这意味着mouse.birdundefined。然后,我们使用点符号来询问sizemouse.bird.size。由于mouse.birdundefined,我们实际上是在询问undefined.size。这是无效的,并将抛出Cannot read property "size" of undefined

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2021-12-13,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 前端面试秘籍 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 答案: A
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档