我有一个JSON文件,其中包含的名称值对比我输入的要多。无论是懒惰还是优雅。我必须有一个像val.name这样的val的属性,而不是使用下面我必须输入的所有名称值对,所以不必输入所有其他对。什么是搜索的正确术语找到答案?或者代码也很好:)
这就是我开始使用时的想法,“废话,我必须输入所有*#& @ $ out!”
$.each(data, function(key, val) {
items.push(key + val.TimeStamp + val.bandwidth + );
JSON
{
"Router": "HS-DSCS1",
"router_data": [
{
"TimeStamp": "2012/01/01 06:00:00",
"NeighborIP": "192.168.1.1",
"State": "Full",
"Bytes001": "21362.95663",
"Bytes002": "2.67 KB",
"Bytes003": "9887.99707",
"Bytes004": "1.24 KB",
"Bytes005": "Serial0/1/0"
}
]
}
答案 0 :(得分:2)
如果我理解你的问题,请使用for..in
。
for (field in val){
// something with val[field]
}
答案 1 :(得分:2)
好像你正在进行字符串连接。如果是的话......
$.each(data, function(key, val) {
items.push(key + $.map(val, String).join('') );
});
DEMO: http://jsfiddle.net/ZVDcy/
或者,如果您正在构建一个新阵列,那么您可以这样做......
var items = $.map(data, function(val, key) {
return key + $.map(val, String).join('');
});