我是 javascript 和对象的新手,我需要通过在孩子为空时删除来操作该对象。
我可以使用哪个函数来删除 id 1701 的子项,因为它自己的子项是空的
我尝试过一些技巧,但对我来说不行
这是我原来的对象:
{
"id": "1",
"name": "root1",
"children": [
{
"id": "1701",
"name": "1701",
"children": []
},
{
"id": "1712",
"name": "1712",
"children": [
{
"id": 153,
"name": "153"
},
{
"id": 156,
"name": "156"
}
],
}
],
}
目标是获得这个对象:
{
"id": "1",
"name": "root1",
"children": [
{
"id": "1712",
"name": "1712",
"children": [
{
"id": 153,
"name": "153"
},
{
"id": 156,
"name": "156"
}
],
}
],
}
你能帮我吗?
非常感谢
我已经尝试过每个,但我需要第二步,我迷路了......
filter()
-方法。
Array 实例的 filter() 方法创建给定数组的一部分的浅表副本,过滤为仅给定数组中通过所提供函数实现的测试的元素。
data = {
"id": "1",
"name": "root1",
"children": [
{
"id": "1701",
"name": "1701",
"children": []
},
{
"id": "1712",
"name": "1712",
"children": [
{
"id": 153,
"name": "153"
},
{
"id": 156,
"name": "156"
}
],
}
],
}
let filteredData = data.children.filter(child => child.children.length > 0);
console.log(filteredData);