gpt4 book ai didi

javascript - 计算对象内部对象内部的值

转载 作者:行者123 更新时间:2023-11-29 21:04:19 25 4
gpt4 key购买 nike

我在一个对象中有一个对象,我想在其中计算数量并返回值。

例子:

cart: {items: {A {number: 'xxx', quantity: 1, price: 999}, B {number: 'xxx', quantity: 3, price: 999}, C {number: 'xxx', quantity: 2, price: 999} }}

我现在想要的是数量计数6的返回。

这就是我到目前为止所取得的成就。我该如何继续?

function() {
var value = {{DataWithInformations}}
var itemCount = cart.items.quantity
}

非常感谢。

最佳答案

有几种方法可以解决这个问题。

最干净的方法之一可能是使用 reduce 函数:

data.cart.items.reduce((sum, item) => sum + item.quantity, 0);

用 ES5 编写(没有箭头函数),它看起来像这样:

data.cart.items.reduce(function (sum, item) { return sum + item.quantity }, 0);

(注意:您发布的内容不是有效的 JSON 或有效对象,因此我对该对象的实际情况进行了一些猜测。

const data = {
cart: {
items: [
{ quantity: 1 },
{ quantity: 2 },
{ quantity: 3 }
]
}
};

const sum = data.cart.items.reduce((sum, item) => sum + item.quantity, 0);
console.log(sum);


更新以配合问题中已更改的对象:

ES6:

Object.keys(a.cart.items).reduce((sum, key) => sum + a.cart.items[key].quantity, 0);

ES5:

Object.keys(a.cart.items).reduce(function (sum, key) { return sum + a.cart.items[key].quantity, 0);

const a = {
cart: {
items: {
A: {number: 'xxx', quantity: 1, price: 999},
B: {number: 'xxx', quantity: 3, price: 999},
C :{number: 'xxx', quantity: 2, price: 999}
}
}
};

const result = Object.keys(a.cart.items).reduce((sum, key) => sum + a.cart.items[key].quantity, 0);
console.log(result);

关于javascript - 计算对象内部对象内部的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44802104/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com