现有如下数据结构:
var someObject = {
'part1' : {
'name': 'Part 1',
'size': '20',
'qty' : '50'
},
'part2' : {
'name': 'Part 2',
'size': '15',
'qty' : '60'
},
'part3' : [
{
'name': 'Part 3A',
'size': '10',
'qty' : '20'
}, {
'name': 'Part 3B',
'size': '5',
'qty' : '20'
}, {
'name': 'Part 3C',
'size': '7.5',
'qty' : '20'
}
]
};
想使用以下变量访问数据:
var part1name = "part1.name";
var part2quantity = "part2.qty";
var part3name1 = "part3[0].name";
是否可以使用javascript或JQuery来实现这一点?
发布于 2018-07-25 08:17:15
你应该是想实现以下代码:
var part1name = someObject.part1.name;
var part2quantity = someObject.part2.qty;
var part3name1 = someObject.part3[0].name;
可以这样试试:
var part1name = someObject["part1"]["name"];
var part2quantity = someObject["part2"]["qty"];
var part3name1 = someObject["part3"][0]["name"];
或者这样:
var partName = "part1";
var nameStr = "name";
var part1name = someObject[partName][nameStr];
var partName = "part1.name";
var partBits = partName.split(".");
var part1name = someObject[partBits[0]][partBits[1]];
发布于 2018-07-25 08:56:18
需使用以下技巧:
new Function('_', 'return _.' + path)(obj);
new Function('_', 'return _.part1.name')(someObject);
https://stackoverflow.com/questions/-100005700
复制相似问题