js求数组中value占比并插入到数组中

js yekong

数组

[{"name":"学生","value":15},{"name":"教师","value":62}]

这是一个包含两个步骤的问题。

首先,我们需要计算数组中所有 "value" 值的总和。然后,我们可以使用每个元素的 "value" 除以总和来计算其占比,并将占比作为新的属性添加到每个元素中。

以下是如何用 JavaScript 来实现的代码:

let array = [
  { name: "学生", value: 15 },
  { name: "教师", value: 62 }
];

// 计算总和
let total = array.reduce((sum, item) => sum + item.value, 0);

// 计算占比并插入到数组中
array.forEach(item => {
  item.percentage = (item.value / total * 100).toFixed(2) + '%';
});

console.log(array);

在这段代码中,reduce 函数用于计算所有 "value" 的总和。然后,我们使用 forEach 遍历数组,计算每个元素的 "value" 占总和的百分比,并将结果添加到新的 "percentage" 属性中。.toFixed(2) 是用来保留两位小数的,你可以根据需要调整。

运行这段代码后,数组中的每个元素都会增加一个 "percentage" 属性,表示其 "value" 的占比。

喜欢