如何查找对象字段并使用我的变量javascript进行更新

如何查找对象字段并使用我的变量javascript进行更新,javascript,loops,lodash,Javascript,Loops,Lodash,我想更新json中的字段。 我的字段是selectedCIID,该字段位于具有某种层次结构的某个对象内 行->面板->目标->所选CIID var dashboard = results.dashboard; var dashboardJson = angular.fromJson(dashboard); //dashboardJson.rows //dashboardJson.rows[0].panels var j; for(i=0; i<=dashboardJso

我想更新json中的字段。 我的字段是selectedCIID,该字段位于具有某种层次结构的某个对象内

行->面板->目标->所选CIID

  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
  }
上面的代码只是显示我的方法的伪代码。 我可以使用原生JS代码来实现这一点。循环

但是,如果我可以使用lodash来迭代这个对象,它会很好

我如何编写代码在面板中查找selectedCIID,无论该字段在哪里用我的变量更新

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

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

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;
        }   
    }   
}
var rowI、panelI、targetI、,
行、面板、目标、目标;
rows=dashboardJson.rows;
对于(rowI=0;rowI

您还可以添加一些
if
语句,以防您想筛选所需的
面板
目标

这只是一个条件问题(
iyes.我知道了.这只是一个例子..你能建议我在lodash中用同样的方法吗..试试这个我想找到键并想在所有地方更新,这个键可能会出现很多次..你可以更新当前行迭代的键值;
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;
        }   
    }   
}