我有一串json数据。想要查找指定的某个对象,我的想法就是遍历这个json数据,获取我想要的对象(我实现的代码在下面)。
但是有没有更高效的方法获取?不用遍历有没有其他的方法?
jquery的类库有没有现成的方法可以用?
for(key in jsonData){
    if(jsonData[key].attr == 5){
       //do something 
    }
}

解决方案 »

  1.   

    如果是json对象的话只能靠遍历了,如果是JSON格式的字符串,直接indexOf...
      

  2.   

    jquery那个filter方法能不能用到这里来?
    再说,indexOf也只能匹配一个吧?
    比如 
    var a = "abcdefabd";
    console.log(a.indexOf('a'));
    它也只返回第一个的位置,后面还有一个a
      

  3.   

    正则啊。。,filter也是靠遍历,只是操作过程帮你简化了而已
      

  4.   

    oh no,我果断肤浅了。版主能否说说这个正则怎么写?
      

  5.   

        var a = "abcdefabd";
        var reg = /a/gi;
        while (m = reg.exec(a)) {
            alert('位置:' + m.index);
        }