Javascript lodash找到键值并替换为JSON中的my变量

Javascript lodash找到键值并替换为JSON中的my变量,javascript,lodash,Javascript,Lodash,我想用我的变量替换selectedCIID的值。 我可以使用JS for循环进行itreting 但我想使用lodash来获得有效的结果 JSON: 请提供帮助。您可以使用纯javascript高效地解决问题,而无需使用lodash: var json={“rows”:[{“title”:“row 1”,“panels”:[{“targets”:[{“selectedCIID”:“5856742957ce424b8db6cfb309b6b013”,“series”:“}]}],{“title”

我想用我的变量替换selectedCIID的值。 我可以使用JS for循环进行itreting

但我想使用lodash来获得有效的结果

JSON:


请提供帮助。

您可以使用纯javascript高效地解决问题,而无需使用
lodash

var json={“rows”:[{“title”:“row 1”,“panels”:[{“targets”:[{“selectedCIID”:“5856742957ce424b8db6cfb309b6b013”,“series”:“}]}],{“title”:“row 2”,“panels”:[{“selectedCIID”:“5856742957CE424B8DB6CFB309B2956B013”,“series”:“}],{“targets”:“selectedCIID”:“5856747CE424B8CFB309B013”,“series”:“}],{“series”:] }] }] };
var newValue=“55555”;
forEach(a=>a.panels.forEach(
b=>b.targets.forEach(c=>c.selectedCIID=newValue));

document.write(“”+JSON.stringify(JSON,0,2)+“”)它不是很短,因为您的json结构复杂

var dashboard = results.dashboard;
          var dashboardJson = angular.fromJson(dashboard);
          if(ciid.length > 1) {
            _.forIn(dashboardJson.rows, function(value0) {
              _.forIn(value0.panels, function(value1) {
                _.forIn(value1.targets, function(value2) {
                  value2.selectedCIID = ciid;
                });
              });
            });
          }

这是我用过的

福林,它对我有用


目标
是否总是一个元素数组?
var data = {
  "rows": [{
    "title": " row 1",
    "panels": [{
      "targets": [{
        "selectedCIID": "5856742957ce424b8db6cfb309b6b013",
        "series": ""
      }]
    }]
  }, {
    "title": "row 2",
    "panels": [{
      "targets": [{
        "selectedCIID": "5856742957ce424b8db6cfb309b6b013",
        "series": ""
      }]
    }, {
      "targets": [{
        "selectedCIID": "5856742957ce424b8db6cfb309b6b013",
        "series": ""
      }]
    }]
  }]
}

var transformedData = _.each(data.rows, function(row) {
  _.each(row.panels, function(panel) {
    _.each(panel.targets, function(target) {
      target.selectedCIID = 'new value';
    });
  });
});

console.log(transformedData);
var dashboard = results.dashboard;
          var dashboardJson = angular.fromJson(dashboard);
          if(ciid.length > 1) {
            _.forIn(dashboardJson.rows, function(value0) {
              _.forIn(value0.panels, function(value1) {
                _.forIn(value1.targets, function(value2) {
                  value2.selectedCIID = ciid;
                });
              });
            });
          }