javascript - 如何在 javascript 中获取 JSON 数据的某些部分
问题描述
我有这个 JSON 数据:
[{"code":"ABC","quantity":8,"userId":"123","isLast":false},{"code":"ABE","quantity":8,"userId":"1222","isLast":false},
{"code":"ABD","quantity":8,"userId":"023","isLast":true}]
是否有可能得到所有quantity
值的总和?
预期结果:
24
解决方案
由于这似乎是 JSON,因此您要做的第一件事是将其转换为对象。从那里您可以遍历数组并提取您需要的任何信息:
const string = `[{"code":"ABC","quantity":8,"userId":"123","isLast":false},{"code":"ABE","quantity":7,"userId":"1222","isLast":false},
{"code":"ABD","quantity":9,"userId":"023","isLast":true}]`;
// convert it into an object
const obj = JSON.parse(string);
// get array of quantity values
const quantity = obj.map(a => a.quantity);
console.log("quantity array:", quantity);
// get sum of quantity values
const quantitySum = obj.reduce((a,b) => (a.quantity === undefined ? a : a.quantity) + b.quantity);
console.log("Sum:", quantitySum);