2017-03-25 42 views
-4

我的阵列看起来像这样的JavaScript /下划线删除一个嵌套阵列

var array = [ 
    { 
    "name" : "abc", 
    "items" : [ 
     { 
     "name": "def" 
     "url" : "https://" 
     }, 
     { 
     "name": "jkl" 
     "url" : "http://" 
     } 
    ] 
    }, 
    { 
    "name" : "ghi", 
    "items" : [ 
     { 
     "name": "jkl" 
     "url" : "http://" 
     } 
    ] 
    } 
] 

我将如何删除对象“JKL”内“ABC”优选地使用下划线

+0

你的预期输出是什么,你试过了什么? – 4castle

回答

1

var array = [ 
 
    { 
 
    "name" : "abc", 
 
    "items" : [ 
 
     { 
 
     "name": "def", 
 
     "url" : "https://" 
 
     }, 
 
     { 
 
     "name": "jkl", 
 
     "url" : "http://" 
 
     } 
 
    ] 
 
    }, 
 
    { 
 
    "name" : "ghi", 
 
    "items" : [ 
 
     { 
 
     "name": "jkl", 
 
     "url" : "http://" 
 
     } 
 
    ] 
 
    } 
 
] 
 

 
console.log("Array before = ",array); 
 

 
array = array.map(elem => { 
 
    if(elem.name !== "abc") return elem; 
 
    elem.items = elem.items.filter(item => item.name !== "jkl"); 
 
    return elem; 
 
}) 
 

 
console.log("Array after = ",array);
内基于对象属性数组

+0

请提供一个工作片段。 –

+0

没问题,完成了 –