V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
推荐关注
Meteor
JSLint - a JavaScript code quality tool
jsFiddle
D3.js
WebStorm
推荐书目
JavaScript 权威指南第 5 版
Closure: The Definitive Guide
mopig
V2EX  ›  JavaScript

菜鸟提问 Javascript ~

  •  
  •   mopig · 2013-11-24 16:03:30 +08:00 · 3404 次点击
    这是一个创建于 4052 天前的主题,其中的信息可能已经有所发展或是发生改变。


    提示 firstName undefined,实际 friends 里边的 i 是有 firstName 的。
    10 条回复    1970-01-01 08:00:00 +08:00
    aveline
        1
    aveline  
       2013-11-24 16:12:48 +08:00   ❤️ 1
    用 friends[i]。
    clippit
        2
    clippit  
       2013-11-24 16:13:21 +08:00   ❤️ 1
    friends[i]
    clippit
        3
    clippit  
       2013-11-24 16:14:23 +08:00
    @aveline 啊被抢沙发了……
    housne
        4
    housne  
       2013-11-24 16:22:40 +08:00   ❤️ 1
    . 只能访问到关键字,很明显这里的 i 是变量,要用 []
    mopig
        5
    mopig  
    OP
       2013-11-24 16:27:24 +08:00
    @aveline
    @clippit
    @housne 嗯,开始不清楚这两个的区别。感谢已发
    dorentus
        6
    dorentus  
       2013-11-24 17:17:20 +08:00   ❤️ 1
    >> for(var i in friends)
    >> 第一次循环时,i 的值是字符串 'bill'
    >> friends.i 等价于 friends['i']
    >> 而你想要的是 friends.bill,等价于 friends['bill']
    mopig
        7
    mopig  
    OP
       2013-11-24 20:02:17 +08:00
    @dorentus friends.bill, friends['bill'] 这个是等价的吧,只是在加载 i 的时候变成了:friends.'bill' ?
    bombless
        8
    bombless  
       2013-11-24 21:52:53 +08:00   ❤️ 2
    噗……楼主还是没习惯。

    a.i 就是 a['i']

    那你想,你要得到 friends.bill 那就应该是 friends['bill'] ,想得到 friends.i 就是 friends['i']
    你写的是 friends.i ,等价于 friends['i'] ,它显然和 friends['bill'] 不是同一个东西。

    完全不存在friends.'bill'这种东西。

    这里也不存在“加载i的时候”怎么样了,因为 friends.i 永远都是 friends['i'] 不可能变成 friends['bill']
    mopig
        9
    mopig  
    OP
       2013-11-24 22:21:06 +08:00
    @bombless 茅塞顿开,非常感谢
    xiezi
        10
    xiezi  
       2013-11-25 22:01:29 +08:00
    这个应该的错误信息是"Cannot read property 'firstName' of undefined",这说明friends.i是没有定义的,而不是你写的“firstName undefined”。@bombless写的很清楚了!
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1749 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 23ms · UTC 16:31 · PVG 00:31 · LAX 08:31 · JFK 11:31
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.