jsonPath排除字段

问题描述:

我想获得整个对象,不包括template字段,不管级别。 这是我的目标:jsonPath排除字段

{ 
      sections: 
     [ 
      { 
       name: "part1", 
       title: "Part I", 
       template: "Part I template", 
       children: [{ 
        name: "1", 
        title: "part1.1", 
        template:"part1.1 template" 
       }, { 
        name: "2", 
        title: "part1.2", 
        template:"part1.2 template" 
       }] 
      }, 
     { 
      name:"part2", 
       //... 
     } 
    ] 
} 

我试图https://github.com/s3u/JSONPathhttps://github.com/dchester/jsonpath我不能弄明白我怎么能做到这一点。

+0

如果u想ü可以简单地使用,而不是使用jsonpath – kgangadhar

如果你想摆脱嵌套对象的特定字段,这可以帮助你。

var data = { 
     sections: 
     [ 
      { 
       name: "part1", 
       title: "Part I", 
       template: "Part I template", 
       children: [{ 
        name: "1", 
        title: "part1.1", 
        template: "part1.1 template" 
       }, { 
        name: "2", 
        title: "part1.2", 
        template: "part1.2 template" 
       }] 
      } 
     ] 
    };   

    var remove_field = function (obj, field) { 
     for (var attr in obj) { 
      if (typeof obj[attr] === 'object' || typeof obj[attr] === 'array') { 
       for (var index in obj[attr]) { 
        remove_field(obj[attr][index],field); 
       } 
      } 
      else if(attr === field){ 
       delete obj[attr]; 
      } 
     } 
     return obj; 
    } 

    data_without_template = remove_field(data, 'template'); 
+0

我也有在明知解决这一问题假设答案是“jsonpath”符号给出的兴趣recurrsive方法,没有代码请: - ) –

+0

来吧伙计.. –