JavaScript/Underscore 根据嵌套数组中的对象 属性 删除数组

JavaScript/Underscore delete array based on object property inside a nested array

我的数组看起来像这样

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

如何删除 'abc' 中的对象 'jkl' 最好使用下划线

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);