Javascript通过id函数从数据中获取名称
我需要创建一个函数,在给定id时返回汽车的名称 我有以下数据:Javascript通过id函数从数据中获取名称,javascript,Javascript,我需要创建一个函数,在给定id时返回汽车的名称 我有以下数据: { "cars": [ { "id": "661", "name": "ford" }, { "id": "657", "name": "fiat", }, { "id": "654", "n
{
"cars": [
{
"id": "661",
"name": "ford"
},
{
"id": "657",
"name": "fiat",
},
{
"id": "654",
"name": "volvo",
},
{
"id": "653",
"name": "porche",
},
{
"id": "650",
"name": "mazda",
}
]
}
所以我做到了:
function getCarNameFromId(id) {
theData = {
"cars": [
{
"id": "661",
"name": "ford"
},
{
"id": "657",
"name": "fiat",
},
{
"id": "654",
"name": "volvo",
},
{
"id": "653",
"name": "porche",
},
{
"id": "650",
"name": "mazda",
}
]
};
console.log(theData.name);
}
那就叫它:
function getCarNameFromId('650');
如何完成此代码,以便获得返回指定id名称的代码?如果您使用的是任何现代浏览器,则可以使用find方法从数组中查找对象
function getCarNameFromId(id) {
......
..........
.....
var obj = theData.cars.find( function(el) {
return el.id == id
})
if(obj){
return obj.name
} else {
return ''; // or just without any value.
}
}
如果仍然想支持旧浏览器,我建议使用lodash.js或underline.jsjs解决方案
var findCar=函数(id){
变量数据={
“汽车”:[{
“id”:“661”,
“名称”:“福特”
},
{
“id”:“657”,
“名称”:“菲亚特”,
},
{
“id”:“654”,
“名称”:“沃尔沃”,
},
{
“id”:“653”,
“姓名”:“波什”,
},
{
“id”:“650”,
“名称”:“马自达”,
}
]
};
对于(变量i=0;i
参考:
迭代cars数组并检查每次迭代时id是否匹配,找到时中断并返回。使用.each()进行迭代。
cars.find(car => car.id === id).name