如何找到对象字段并使用my变量javascript进行更新

时间:2016-03-21 07:01:10

标签: javascript loops lodash

我想在json中更新字段。 我的字段是选中的CIID,此字段位于具有某种层次结构的某个对​​象

rows-> panels->靶> selectedCIId,

  var dashboard = results.dashboard;
  var dashboardJson = angular.fromJson(dashboard);
  //dashboardJson.rows //dashboardJson.rows[0].panels
  var j;
  for(i=0; i<=dashboardJson.rows; i++){
    for(j=0;)
    dashboardJson.rows[i].panels
    dashboardJson.rows[0].panels[0].targets[0].selectedCIID = ci;
    //dashboardJson.rows[0].panels[0].targets[0].selectedCIID
  }

JSON:

{
    "rows": [{
        "title": " row 1",
        "panels": [{
            "targets": [{
                "selectedCIID": "5856742957ce424b8db6cfb309b6b013",
                "series": ""
            }]
        }]
    }, {
        "title": "row 2",
        "panels": [{
            "targets": [{
                "selectedCIID": "5856742957ce424b8db6cfb309b6b013",
                "series": ""
            }]
        }, {
            "targets": [{
                "selectedCIID": "5856742957ce424b8db6cfb309b6b013",
                "series": ""
            }]
        }]
    }]
}

上面的代码只是显示我的方法的虚拟代码。 我可以使用原生JS代码来做到这一点。 for loop。

但是,如果我可以使用lodash来迭代这个对象_each或者什么就可以了。

如何使用my变量更新此字段的内容,如何编写代码以在面板中查找selectedCIID。

我想更新“selectedCIID”字段。 请帮帮我..

1 个答案:

答案 0 :(得分:0)

如果要更改所有await的属性,则多个循环可以执行此操作。

targets

如果您想要过滤所需的var rowI, panelI, targetI, rows, panels, targets, target; rows = dashboardJson.rows; for (rowI = 0; rowI < rows.length; rowI++) { panels = rows[rowI].panels; for (panelI = 0; panelI < panels.length; panelI++) { targets = panels[panelI].targets; for (targetI = 0; targetI < targets.length; targetI++) { target = targets[targetI]; target.selectedCIID = ci; } } } ifrows

,您还可以添加一些panels语句