假设我有这个对象:
{
"cars":[
{"modell":"Volvo", "color":"blue", "origin":"Sweden"},
{"modell":"SAAB", "color":"black", "origin":"Sweden"},
{"modell":"Fiat", "color":"brown", "origin":"Italy"},
{"modell":"BMW", "color":"silver", "origin":"Germany"},
{"modell":"BMW", "color":"black", "origin":"Germany"},
{"modell":"Volvo", "color":"silver", "origin":"Sweden"}
]
}
首先,我将对象保存到 myCars 。
1:我想使用javascript来提取原产瑞典的汽车,然后将这些汽车放在一个名为 mySwedishCars 的新对象中。
2:如果这更简单,我想从对象 myCars 中提取所有非瑞典汽车。
最后,我必须有一个只包含瑞典汽车的物体。
欢迎任何建议!
答案 0 :(得分:1)
在汽车数组上使用filter
仅返回瑞典汽车:
function getSwedish(arr) {
return arr.filter(function (el) {
return el.origin === 'Sweden';
});
}
var mySwedishCars = getSwedish(myCars.cars);
BUT!更好的是,你可以推广这个功能,以返回你喜欢的汽车的国籍:
function getCarsByCountry(arr, country) {
return arr.filter(function (el) {
return el.origin === country;
});
}
var mySwedishCars = getCarsByCountry(myCars.cars, 'Sweden');
var myGermanCars = getCarsByCountry(myCars.cars, 'Germany');
答案 1 :(得分:1)
您可以在javascript中过滤数组:
var swedishCars = myCars.cars.filter(function(c) {
return (c.origin === "Sweden");
});