我有一个像这样的JSON对象:
[
{'car':'punto','brand':'fiat','color':'black','model':'2007'},
{'car':'XUV500','brand':'Mahindra','color':'black','model':'2008'},
{'car':'Eartiga','brand':'Maruti','color':'black','model':'2009'}
]
我想实现这个目标:
[
{'car':'punto','brand':'fiat'},
{'car':'XUV500','brand':'Mahindra'},
{'car':'Eartiga','brand':'Maruti'}
]
如何使用javascript和Jquery实现它。任何帮助都会得到赞赏!
答案 0 :(得分:3)
根据需要,您基本上有两种可能性来解决问题:
var data = [{ 'car': 'punto', 'brand': 'fiat', 'color': 'black', 'model': '2007' }, { 'car': 'XUV500', 'brand': 'Mahindra', 'color': 'black', 'model': '2008' }, { 'car': 'Eartiga', 'brand': 'Maruti', 'color': 'black', 'model': '2009' }],
data1 = data.map(function (a) {
return { car: a.car, brand: a.brand };
});
data.forEach(function (a) {
delete a.color;
delete a.model;
})
document.write('<pre>' + JSON.stringify(data, 0, 4) + '</pre>');
document.write('<pre>' + JSON.stringify(data1, 0, 4) + '</pre>');
答案 1 :(得分:0)
你可以在javascript中使用map功能
试试这个
x = [{
'car': 'punto',
'brand': 'fiat',
'color': 'black',
'model': '2007'
}, {
'car': 'XUV500',
'brand': 'Mahindra',
'color': 'black',
'model': '2008'
}, {
'car': 'Eartiga',
'brand': 'Maruti',
'color': 'black',
'model': '2009'
}]
var result = x.map(function(v) {
return {
car: v.car,
brand: v.brand
}
})
document.write('<pre>' + JSON.stringify(result, 0, 4) + '</pre>')
答案 2 :(得分:0)
您可以遍历数组中的每个项目,并使用您想要的数据创建一个新数组。
var originalArray = [{
'car': 'punto',
'brand': 'fiat',
'color': 'black',
'model': '2007'
}, {
'car': 'XUV500',
'brand': 'Mahindra',
'color': 'black',
'model': '2008'
}, {
'car': 'Eartiga',
'brand': 'Maruti',
'color': 'black',
'model': '2009'
}];
var newArray = [];
for (var i = 0; i < originalArray.length; i++) {
var originalItem = originalArray[i];
newItem = {
car: originalItem.car,
brand: originalItem.brand
};
newArray.push(newItem);
}
console.debug(newArray);
答案 3 :(得分:0)
var oldJson = [
{'car':'punto','brand':'fiat','color':'black','model':'2007'},
{'car':'XUV500','brand':'Mahindra','color':'black','model':'2008'},
{'car':'Eartiga','brand':'Maruti','color':'black','model':'2009'}
];
var newJson = [];
for(var key in oldJson) {
newJson.push({
'car' : oldJson[key].car,
'brand' : oldJson[key].brand
})
}
console.log(newJson);
&#13;
答案 4 :(得分:0)
尝试此方法:
function getIwanttoList() {
var data = [
{
'text': '----- Select what you want -----',
'value': '',
}, {
'text': 'Ask a question',
'value': 'AskAQuestion',
}, {
'text': 'Report a content issue',
'value': 'ReportContentIssue',
}, {
'text': 'Propose an idea or quality improvement',
'value': 'ProposeImprovements',
}, {
'text': 'Submit content for governance',
'value': 'SubmitContent',
}
];
return data;
}