【问题标题】:How to delete every object from tree [duplicate]如何从树中删除每个对象[重复]
【发布时间】:2019-02-06 14:52:45
【问题描述】:

我有 JSON 对象...并且想从每个孩子到最后一个孩子删除名称键值,即(name-11,name-22)...使用 java 脚本函数...

{
  "id": "1",
  "name": "11",
  "child": [
{
  "id": 2,
  "name": "22",
  "child": [
    {
      "id": 3,
      "name": "33",
      "child": [
        {
          "id": 4,
          "name": "44",
          "child": [
            {
              "id": 5,
              "name": "55",
              "child": [
                {
                  "id": 6,
                  "name": "66"
                }
              ]
            }
          ]
        }
      ]
    }
  ]
}
 ]
}

有什么正确的方法吗?

【问题讨论】:

  • 是的,有一个正确的方法,叫做递归遍历。请发布您为解决此问题所做的努力,基本上,创建一个minimal reproducible example
  • 不,它看起来像一个对象,而不是 JSON。你到底想做什么?

标签: javascript arrays treeview


【解决方案1】:

可能是这样的......

let myJson = {
  "id": "1",
  "name": "11",
  "child": [{
    "id": 2,
    "name": "22",
    "child": [{
      "id": 3,
      "name": "33",
      "child": [{
        "id": 4,
        "name": "44",
        "child": [{
          "id": 5,
          "name": "55",
          "child": [{
            "id": 6,
            "name": "66"
          }]
        }]
      }]
    }]
  }]
};
let currentObject = myJson;
while (currentObject.child && currentObject.child[0]) {
  delete currentObject.name;
  currentObject = currentObject.child[0];
}
console.log(myJson)

【讨论】:

    【解决方案2】:

    javascript 有一个删除操作符,它的工作方式如下:

    delete object.name
    

    现在您可以将其与 for 循环一起使用并删除每个条目

    【讨论】:

      猜你喜欢
      • 2018-09-06
      • 1970-01-01
      • 2020-07-22
      • 1970-01-01
      • 2014-08-23
      • 2015-08-25
      • 2022-12-05
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多