求解释每行代码的意思。。。

来源:4-1 [JavaScript]对象概述

Helianthuserin

2016-03-16 23:10

能不能注释一下这里每行代码什么意思??看不懂= =,用的是《JS高级程序设计》,没看到相关内容,,,http://img.mukewang.com/56e9774d0001c74e18000795.jpg

写回答 关注

1回答

  • 不知谁占用了本大人的名字
    2016-03-16 23:53:15
    已采纳

    第一句是声明obj对象

    第二句是指obj.1=1这个意思,但是1是不合法的标识符,用点是不行的,用[]进行引用才有,例如:obj[x] 等于obj.x

    第三句也是 obj.1=2,由于上面有1这个属性了(上面的obj[1] 是等于第二行的obj['1']),,所以将上面的obj.1=1覆盖了,下面的obj属性中就为Object[1:2];

    到第四句说的 就是obj对象中的属性,为Object[1:2]

    这样上面一解析你应该大概就清楚了不少,那下面也是同理

    第五句也是同理 声明对象obj[{}]=true;

    第六句 其实跟上面的一样,JavaScript会进行tostring处理,既然toString了,obj[{}] 是等于obj[{x:1}]

    俩个是同一个属性

    第7句 就是将整个属性输出 将上面的obj.[1]属性输出,也将下面的obj.[{}]属性输出,所以是[1:2,[object Object]]:true

    如果你满意的话,给我个好评,我挺喜欢好评的 =——=



    ZTON 回复不知谁占用了...

    我和它有同样的疑问,我的意思是,为什么他显示了{1: 2, [object Object]: true} 而不是{1: 2,{}: true, {x:1}: true},是不是{}和{x:1}字符串话后的后的值都是[object Object], 所以Key相同.

    2016-07-07 22:33:53

    共 5 条回复 >

JavaScript深入浅出

由浅入深学习JS语言特性,且解析JS常见误区,从入门到掌握

281112 学习 · 1020 问题

查看课程

相似问题