微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何在JavaScript中将对象中的值相乘

如何解决如何在JavaScript中将对象中的值相乘

我正在尝试创建一个函数,在该函数中我可以将一个对象的值相乘并返回总和。

例如:

let object = {
  'a': 4,'b': 10,'c': 5
}

我的代码如下:

function sumOfValues(testObject) {
  let sumOfValues = (a * b * c)
  return sumOfValues
}


let testObject = {
  'a': 4,'c': 5
}


sumOfValues(testObject)

解决方法

您可以从对象中获取所有值,然后返回所有值的乘积。

function productOfValues(object) {
    return Object.values(object).reduce((a,b) => a * b);
}

console.log(productOfValues({ a: 4,b: 10,c: 5 }));

,

该函数有效,但是您错过了使用传递给该函数的对象的步骤。

如果您始终希望对象具有abc键,则可以使用object destructuring assignment来使用暴露并在{{ 1}}功能。

sumOfValues

,

let object = {
  'a': 4,'b': 10,'c': 5
}

let mult = 1;

for(let key of Object.keys(object)){
  mult *= object[key]
}

console.log(mult)

,

如果该对象仅具有3个属性,即a,b,c,则其含义直接,

const sumOfValues = (obj) => { return obj.a * obj.b * obj.c; }

但是,如果键是可变的和动态的,则需要以下内容,

const sumOfValues = (obj) => { 
    let sum = 1;
    Object.keys(obj).forEach(key => sum = sum*obj[key]);
    return sum;
}

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。