javascript - 获取多个项目的平均值

标签 javascript

假设我有一个这样的列表

[name1, number1], [name2, number2], [name3, number 3]

例如

[John, 86], [Joe, 94], [bob, 45], [andy, 34]

我正在尝试打印出 80 以上的所有人并获取平均值。所以在这种情况下我想输出

John Joe 90

我可以用来执行此操作的最简单的结构是什么?

最佳答案

如果您有一个数组数组,每个数组都有两个元素,第一个是姓名,第二个是年龄,您可以这样表示:

var people = [["John", 86], ["Joe", 90], ["Bob", 45], ["Andy", 34]];

您可以选取 80 岁以上的人,获取他们的姓名列表,并计算他们的平均年龄,如下所示:

var sum = 0;
var length = 0;
var names = [];
for(var i = 0; i < people.length; i++) {
  var person = people[i];
  if(person[1] >= 80) {
    sum += person[1];
    length++;
    names.push(person[0]);
  }
}
alert(names.join(" "));  //alerts "John Joe"
alert(sum / length);     //alerts 88

您可以在操作中看到它 on this jsFiddle page .

关于javascript - 获取多个项目的平均值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12921277/

相关文章:

javascript - 仅当 &lt;input&gt; 元素未获得焦点时触发 jQuery keyup 事件

javascript - 多个 JS 创建的推特按钮 : track which one was clicked?

javascript - 如何将 replace() javascript regex 函数转换为 actionscript?

Javascript 库开发范围和命名空间

javascript - img.src 属性是否必要?

javascript - jQuery 内部错误 : Uncaught TypeError: Cannot read property 'toLowerCase' of undefined

javascript - 即使仅呈现文本,Firefox 上的 HTML5 低 FPS

javascript - JScript运行时错误: '$' is undefined

javascript - 在 React Bootstrap 3 的文本区域内标记

javascript - 通过读取 Node.js 中目录中的所有文件来动态导出模块