如何从某些对象中过滤json对象。 (仅选择一些值)

时间:2014-06-25 10:10:08

标签: javascript jquery json

我需要帮助!我有一个像这样的json对象: (res.json(记录[0]。内容)) 我需要将这个json转换为另一个视图...只选择一些值...我将不胜感激任何帮助!

[
    {
        "classId": 0,
        "type": "d",
        "cluster": -2,
        "position": 1,
        "version": 0,
        "value": {
            "@type": "d",
            "rid": "#15:0",
            "class": "Currency",
            "Name_currency": "Фунт"
        }
    },
    {
        "classId": 0,
        "type": "d",
        "cluster": -2,
        "position": 2,
        "version": 0,
        "value": {
            "@type": "d",
            "rid": "#15:1",
            "class": "Currency",
            "Name_currency": "Доллар"
        }
    },
    {
        "classId": 0,
        "type": "d",
        "cluster": -2,
        "position": 3,
        "version": 0,
        "value": {
            "@type": "d",
            "rid": "#15:2",
            "class": "Currency",
            "Name_currency": "Гривна"
        }
    }
]

我怎么能得到这个?只有我的json对象的值?

[
    {
        "@type": "d",
        "rid": "#15:0",
        "class": "Currency",
        "Name_currency": "Фунт"\
    },
    {
        "@type": "d",
        "rid": "#15:1",
        "class": "Currency",
        "Name_currency": "Доллар"
    },
    {
        "@type": "d",
        "rid": "#15:2",
        "class": "Currency",
        "Name_currency": "Гривна"
    }
]

3 个答案:

答案 0 :(得分:1)

在后端(Node.js)网站上使用Array.prototype.map

res.json(record[0].content.map(function(e) {
    return e.value;
}));

答案 1 :(得分:1)

你应该使用javascript map()方法(其中a是你的第一个数组):

var newObj = a.map(function(obj){
    return obj.value;
});

console.log(newObj);

了解更多信息https://developer.mozilla.org/ru/docs/JavaScript/Reference/Global_Objects/Array/map

答案 2 :(得分:0)

在jquery中使用.each()来遍历对象

var value=[];
$.each(data,function(i,val){   
  value.push(val.value);  
});

console.log(value);

DEMO