怎么让对象中的对象的值相加

var data= {
                "67407685": {
                    "24888861": 200,  
                    "23675650": 300   
                },
                "24888861": {
                    "23675650": 789,
                    "23127112": 400
                }, 
                "23675650": {
                    "24888861": 789,
                    "67407685": 900
                },
                "23127112": {
                    "5388329": 340,
                    "24888861": 123
                },
                "38121665": {
                    "24888861": 400,
                    "23675650": 123
                },
                "5388329": {
                    "24888861": 789,
                    "23127112": 400
                }
            }

我尝试循环,再循环,然后就懵了,求指点思路感激不尽

阅读 6.7k
4 个回答
let count = 0;
    for (let [, value] of Object.entries(data)) {
        for ([k, v] of Object.entries(value)) {
            count += v;
        }
    }
    console.log(count);

我也不知道你要怎么相加。
反正我是把data的每个属性的值分别相加了。

var data= {
    "67407685": {
        "24888861": 200,
        "23675650": 300
    },
    "24888861": {
        "23675650": 789,
        "23127112": 400
    },
    "23675650": {
        "24888861": 789,
        "67407685": 900
    },
    "23127112": {
        "5388329": 340,
        "24888861": 123
    },
    "38121665": {
        "24888861": 400,
        "23675650": 123
    },
    "5388329": {
        "24888861": 789,
        "23127112": 400
    }
};

var add = function (root_obj) {
    for(let second_obj in root_obj){
        let sum = 0;
        for(let third_obj in root_obj[second_obj]){
            sum+= root_obj[second_obj][third_obj];
        }
        console.log(`${second_obj}-->${sum}`);
    }
};

add(data);
var sum = 0;
for (var key in data) 
    for (var _key in data[key]) sum += data[key][_key];
console.log(sum);

初学者 这样写应该比较容易理解

   let result = 0
   for (let i in data) {
       for (let j in data[i]) {
           result += data[i][j]
       }
    }


    console.log(result)
    
    注意: 需要了解点语法和中括号语法的区别
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题