在对象数组中插入新元素并对数组进行排序

我有一个包含对象名称和标记的对象数组。像下面

如何计算每个学生的“平均”分数并比较“平均”分数以获得最高的学生。我不想使用ES6

var Students = [{
    name: "Bob",
    marks: [78, 80, 89, 90, 68]
  },
  {
    name: "Alin",
    marks: [87, 60, 59, 70, 68]
  },
  {
    name: "bikash",
    marks: [82, 60, 79, 60, 80]
  }
];


var average;
var newArray = [];
for (let i = 0; i < Students.length; i++) {
  var marks = Students[i]["marks"];
  var total = 0;
  console.log(marks);
  for (var j = 0; j < marks.length; j++) {
    total += marks[j];
  }
  average = total / marks.length;
  newArray.push(average)
  var msg = Students[i]["name"] + " has average mark: " + average;
  console.log(msg)

}

console.log(newArray)

我想在对象中插入平均值以及名称,例如[{name:“ Bob”,平均值:89.4},{name:“ Alin”,平均值:87.2},{name:“ Bikash”,平均值:89.4 }然后对对象进行排序。

最后,我想要console.log,因为Bob是成绩最好的学生,或者Alin和Bob是成绩最好的学生(如果他们的平均数相同)

巴尔玛

不要将平均值推入新数组,将其添加为Students[i]with的属性Students[i].average = average;

然后,您可以使用该属性对数组进行排序,并从排序后的数组中将其打印给学生。

var Students = [{
    name: "Bob",
    marks: [78, 80, 89, 90, 68]
  },
  {
    name: "Alin",
    marks: [87, 60, 59, 70, 68]
  },
  {
    name: "bikash",
    marks: [82, 60, 79, 60, 80]
  }
];


var average;
for (let i = 0; i < Students.length; i++) {
  var marks = Students[i]["marks"];
  var total = 0;
  for (var j = 0; j < marks.length; j++) {
    total += marks[j];
  }
  average = total / marks.length;
  Students[i].average = average;
  var msg = Students[i]["name"] + " has average mark: " + average;
  console.log(msg)

}
Students.sort((s1, s2) => s2.average - s1.average);
var topAvg = Students[0].average;
var topStudents = Students.filter(s => s.average == topAvg).map(s => s.name).join(", ");
console.log(`Top Students are ${topStudents} with mark ${topAvg}`);

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

在对象数组中对数组进行排序

来自分类Dev

根据对象中字段的存在对数组进行排序

来自分类Dev

使用C中的Bucket Sort对数组进行排序。有关在链接列表中插入新元素的代码如何工作的问题

来自分类Dev

对数组C中的元素进行排序

来自分类Dev

按数组元素对数组进行排序

来自分类Dev

在对数组元素进行排序时某些输入上的ArrayIndexOutOfBoundExceptions吗?

来自分类Dev

在MongoDB文档中对数组元素进行排序?

来自分类Dev

在Python中对数组数组进行排序

来自分类Dev

按日期对数组中的对象进行排序

来自分类Dev

按最高值对数组中的对象进行排序

来自分类Dev

如何对数组中的对象进行冒泡排序?

来自分类Dev

按日期对数组元素进行排序

来自分类Dev

以升序对数组的元素进行排序

来自分类Dev

根据特定元素对数组进行排序

来自分类Dev

在JavaScript上对数组元素进行排序

来自分类Dev

PHP。按键对数组元素进行排序

来自分类Dev

对数组的元素进行排序 (Swift)

来自分类Dev

从 AZ 对数组内的对象进行排序

来自分类Dev

在对象数组中对对象数组中的值进行排序

来自分类Dev

在指向对象的指针的动态数组上插入新元素

来自分类Dev

使用插入排序对数组进行排序

来自分类Dev

在Erlang中对数组进行排序

来自分类Dev

在Julia中对数组进行排序

来自分类Dev

在Matlab中对数组的结构进行排序

来自分类Dev

在源文件中对数组进行排序

来自分类Dev

对数组中的文档进行排序

来自分类Dev

在AngularJS中对数值数组进行排序

来自分类Dev

在PHP或MySQL中对数组进行排序

来自分类Dev

如何对数组内的不同对象数组进行排序

Related 相关文章

热门标签

归档