比如navigator對象,有appName,appCodeName,appVersion,platform,userAgent這幾個屬性。我將這幾個屬性保存在一個數組中:var nav=[appName,appCodeName,appVersion,platform,userAgent];然後navigator.nav[1]這樣爲什麽不行呢?
1 回答
![?](http://img1.sycdn.imooc.com/54584ee0000179f302200220-100-100.jpg)
隔江千里
TA贡献1906条经验 获得超10个赞
当你明确知道一个对象 a
具有属性 b
,才可以 a.b
使用。
另一种情况是你需要动态使用一个对象的某个属性:
var a = { b: 'bb'};var c = 'b';console.log(a[c]);
虽然 c
保存了一个属性名,但是 a
没有 c
这个属性,a.c
中的 c
是个固定值。
而 a[c]
中的括号会计算其中的变量得到 a['b']
。
所以你应该写成 navagator[nav[1]]
添加回答
举报
0/150
提交
取消