js obj对象成员访问使用变量

我有一个obj
obj.name.ok
obj.name.ok2
均可以单独访问

var k = 'ok';
obj.name.k 这样访问就报错了 我想把最后一个成员 用变量

阅读 3.9k
2 个回答

在JS中,如果一个对象的属性是用变量表示的,必须用一对[]包裹,例如:

var obj = {
    name: "hello"
}

obj.name; //hello

var myName = "name";
obj.myName; //Error
obj[myName]; //hello

你应该用obj.name[k],这样写js默认k是一个变量,而obj.name.k这样js会默认k是一个属性了

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题