动态获取 json 值

Get json value dynamically

本文关键字:json 获取 动态      更新时间:2023-09-26
{
 "id":["123"],
 "optionid_123":"98"
}

我将id作为变量,但是如何从中获得optionid_*?我尝试了一些方法,但似乎没有任何效果。each位于相应函数的内部,jsonid 包含正确的值。这是我尝试访问不起作用的值98

$.each(data.id,function(){
    var jsonid = this;
    console.log( data.optionid_+jsonid ); // doesn't work
});

您可以使用括号表示法:

console.log( data['optionid_' + jsonid] );

我认为你与data.id的循环不正确。那是

$.each(data.id, function() {..})

是不正确的。

例如,如果data如下所示:

var data = [{
 "id":["123"],
 "optionid_123":"98"
},
{
 "id":["456"],
 "optionid_456":"99"
}];

然后,您需要循环data并获取所需的属性。

$.each(data, function(index, val) {
  var jsonid = val.id[0]; // as val.id is array so you need [0] to get the value
  console.log(val['optionid_' + jsonid]); // bracket notation used
});

演示