每个javascript - 自动检测val的名称(key,val)

时间:2012-04-10 21:41:33

标签: javascript jquery each

我有一个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"
        }
    ]
}

2 个答案:

答案 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('');
});

DEMO: http://jsfiddle.net/ZVDcy/1/