javascript – So finden Sie schnell JSON-Daten
仅有的幸福
仅有的幸福 2017-05-18 10:47:13
0
3
760

So finden Sie schnell JSON-Daten
Wie in der Abbildung unten gezeigt, ermitteln Sie den Namenswert, wenn die ID bekannt ist

仅有的幸福
仅有的幸福

Antworte allen(3)
世界只因有你

假设你的原始数据是这样的:

var arr = [{
    id:1,
    name:'a'
},{
    id:2,
    name:'b'
}];

现在你可以一次性的转换一下数据格式为:

var obj = {};
arr.forEach(function (v,i) {
    obj[v.id] = v;
});

obj = {
    1:{
        id:1,
        name:'a',
    },
    2:{
        id:2,
        name:'b'
    }
};

然后就可以根据id,直接拿到name了

obj[id].name

其实上面的效率还是比较低的。

既然已经循环了,就直接从循环里那对应的字段

function getNameById(id) {
    var name = '';
    arr.forEach(function (v,i) {
        if (v.id==id) {
            name = v.name;
            console.log(i);
            return;
        }
    });
    return name;
}

上面两种方法的区别就是,如果不停的重复获取值,选择第一种方法,因为只需要循环一次,后面不需要再循环了。
第二种方法每次获取都要重新循环一遍

左手右手慢动作

赞同楼上的说法,改变数据结构。把id变成key。把其他的东西变成value如果不需要其他的可以直接把name变成value

过去多啦不再A梦
fn(id) {
  return arr.filter(o => o.id === id)[0].name; // id一定有对应值的情况
}
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!