看下面的代码,输出的结果是什么?并解释你的答案。

var a={},b={key:'b'},   c={key:'c'};a[b]=123;
a[c]=456;console.log(a[b]);

不少人可能会以为答案是 123  ,但结果是  456  ,为什么会是这样子的呢。

原因是我们忽略了一个知识点:JavaScript在设置对象的属性的时候,会暗中字符串化参数值

在这里例子中,由于 b 和 c都是对象,把它们设置为对象a的参数,它们都将被转换为 "[object Object]"  。

结果就是, a[b] 和 a[c] 都相当 "[object Object]"  ,而后者会将前者的值覆盖。

因此,设置或引用 a[c] 和设置或引用 a[b] 完全相同。所以得到的答案是  456  。

热门文章

原创教程

原创教程:

附加习题:

趣味职场

职场焦虑:

感到迷茫:

培训出身:

培训费用:

搞笑黑话:

职业自由:

职场形象:

合作推广分割线

经典面试题(9):以下代码将输出什么?并解释你的答案。相关推荐

  1. 中移动Oracle,Oracle中国移动经典面试题(附代码跟两种答案)

    /* 中国移动sql面试题: create table test( id number(10) primary key, type number(10) , t_id number(10), valu ...

  2. Python面试题之下面代码会输出什么

    def f(x,l=[]):for i in range(x):l.append(i*i)print lf(2) f(3,[3,2,1]) f(3) 答案: [0, 1] [3, 2, 1, 0, 1 ...

  3. python经典面试题100例 面试宝典

    人生苦短 我用 Python 芝麻开门! python 进阶 1 python 经典面试题 9 python 面试 100 例 21 python 面试题总结 101 python 进阶 1 PEP8 ...

  4. 经典面试题(2):下面的代码将输出什么到控制台?

    紧接着昨天的面试题(1),我们今天继续学习一道经典的面试题. 这道题一般会以笔试题的形式出现,题目如下,看代码: (function(){ var a = b = 3; })(); console.l ...

  5. 经典面试题(40):以下代码将输出的结果是什么?

    web前端教程 用大白话,来讲编程 最近几天工作任务比较忙,没抽时间来给大家推送习题,今天续上. 我们先来回顾上一题<经典面试题(39)>.看投票结果,正确的答案是选项:C,绝大部分同学选 ...

  6. 经典面试题(29):以下代码将输出的结果是什么?

    我们先来回顾上一题<经典面试题(28)>.看投票结果,最热门的选项A是错误的! 正确的答案是选项:C,运行的结果是输出:a.为什么输出的是a,而不是最多人选择的:value is a 呢? ...

  7. 经典面试题(26):以下代码将输出的结果是什么?

    我们先来回顾上一题<经典面试题(25)>.看投票结果,答案B和答案D选的人数旗鼓相当,到底哪个才是正确的答案呢? 正确的答案是选项:D ["1",empty x 2]. ...

  8. 经典面试题(21):以下代码将输出的结果是什么?

    周末外出了两天,没有持续给大家带来新的题目,久等了! 今天我们先来回顾一下上周五的题目<经典面试题(20)>.看投票结果,大部分小伙伴都选错了! 正确的答案是选项:C.调用在该作用域未声明 ...

  9. 经典面试题(20):以下代码将输出的结果是什么?

    昨天<经典面试题(19)>的答案我自己没有留言,因为你们一个个解析得实在太好,感觉都没我啥事了,同样,你们优秀的答案解析已经被置顶啦. 我们回顾一下,看看几个优秀的答案分析: 当然,还有点 ...

  10. 经典面试题(19):以下代码将输出的结果是什么?

    昨天<经典面试题(18)>的结果已经公布,小伙伴都解析得十分清晰到位,已经被置顶为标准答案. 答案被点赞做多的属于这位小伙伴: 自己搞懂,和能把已经掌握的知识逻辑清晰地表达出来,教会别人, ...

最新文章

  1. sed用法之批量添加nagios services.cfg监控项
  2. 定制CentOS (Redhat AS 5.1)安装盘
  3. 2020黑群晖最稳定版本_打造完美6.2.3黑群晖,正确显示 CPU,支持Nvme缓存
  4. 记忆化搜索,FatMouse and Cheese
  5. 【原】Win SQL Server2012 IIS 安装(图文详解)
  6. 手机整屏显示数据php,完美解决手机网页大背景不能铺完整个屏幕的超级代码
  7. ElasticSearch面试 - es 写入数据的工作原理是什么啊?
  8. Javascript基于对象基础
  9. mysql connector开源协议_Spring Boot 集成 MariaDB Connector/J 连接 MySQL
  10. rhel5.5下安装oracle10g报libXp.so.6错误
  11. linux中文语音合成,Linux系统下高质量(微软)中、英文语音合成TTS的安装
  12. matlab小波工具箱讲解,Matlab中的小波分析工具箱详解.ppt
  13. b站用户年龄段占比_用户和电商变现上,微博、小红书、B站差别在哪里?
  14. 多元线性回归--案例分析及python实践
  15. 在div中加本地html,div加载另一个HTML页面
  16. Rabbitmq安装过程(使用docker)
  17. Gitlab CI/CD中的yml遇到的错误分析含解决方法(全)
  18. 如何批量查询谷歌PR权重是多少?谷歌PR权重怎么批量查询
  19. 快手签名算法php,2019 快手API签名算法
  20. 震惊!催眠居然可以这么简单!

热门文章

  1. 服务业小店店主生活和工作洞察报告
  2. 有哪些典型的「学生思维」?
  3. 【2017年第1期】专题导读:大数据与信用评价系统
  4. 2016 CCF大数据与计算智能大赛——活动报名表
  5. 编译原理——实验叁预习报告——基于YACC的TINY语法分析器的构建
  6. 【Git】GitHub设置README.md引用本repo目录下的图片
  7. [计数排序]统计三个数和的[最大概率](洛谷P2911题题解,Java语言描述)
  8. Linux RAID磁盘阵列
  9. 缓存淘汰、缓存穿透、缓存击穿、缓存雪崩、数据库缓存双写一致性
  10. Spark MLlib