Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/435.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何使用变量作为对象的属性?_Javascript_Json_Object - Fatal编程技术网

Javascript 如何使用变量作为对象的属性?

Javascript 如何使用变量作为对象的属性?,javascript,json,object,Javascript,Json,Object,对于下面的树 var items = { 'drinks': [ { 'name': 'coke', 'sugar': '1000' }, { 'name': 'pepsi', 'sugar': '900' } ] }; 有没有办法做类似的事情 function get_values(data) { var items = JSON.parse(items) return items.data[0]

对于下面的树

var items = {
  'drinks': [
    {
      'name': 'coke',
      'sugar': '1000'
    },
    {
      'name': 'pepsi',
      'sugar': '900'
    }
  ]
};
有没有办法做类似的事情

function get_values(data) {
  var items = JSON.parse(items)
  return items.data[0].name;
}
get_values('drinks');

只需根据其名称访问属性值

使用括号表示法:

items['drinks'];
或者,使用点表示法:


也可以作为关联数组访问对象


console.logitems['drinks']

如果希望使用变量的内容作为属性的访问器,则必须使用数组语法:

myObject[myKey]
在您的情况下,您需要以下内容:

var items = JSON.parse(items)

function get_values(data) {
    return items[data][0].name;
}

get_values('drinks');  // returns "coke"

请注意,这只是返回数组items.drinks中第一个元素的名称。

没有JSON对象。
var items = JSON.parse(items)

function get_values(data) {
    return items[data][0].name;
}

get_values('drinks');  // returns "coke"