Javascript
 Computer >> コンピューター >  >> プログラミング >> Javascript

オブジェクトの配列内で、JavaScriptで最も高い値を保持するオブジェクトを見つける方法は?


Studentという名前の複数のオブジェクトを保持する配列があります。各オブジェクトstudentにはいくつかのプロパティがあり、そのうちの1つはgrades-

という名前の配列です。
const arr = [
   {
      name: "Student 1",
      grades: [ 65, 61, 67, 70 ]
   },
   {
      name: "Student 2",
      grades: [ 50, 51, 53, 90 ]
   },
   {
      name: "Student 3",
      grades: [ 0, 20, 40, 60 ]
   }
];

生徒の配列をループして、成績配列内で最高の成績を持つ生徒オブジェクトを見つける関数を作成する必要があります。

このためのコードは-

になります
const arr = [
   {
      name: "Student 1",
      grades: [ 65, 61, 67, 70 ]
   },
   {
      name: "Student 2",
      grades: [ 50, 51, 53, 90 ]
   },
   {
      name: "Student 3",
      grades: [ 0, 20, 40, 60 ]
   }
];
const highestGrades = arr.map((stud, ind) => {
   return {
      name: stud.name,
      highestGrade: Math.max.apply(Math, stud.grades) // get a student's
      highest grade
   };
});
const bestStudent = highestGrades.sort((a, b) => {
   return b.highestGrade − a.highestGrade;
})[0];
console.log(bestStudent.name + " has the highest score of " +
bestStudent.highestGrade);

出力

そして、コンソールの出力は-

になります
Student 2 has the highest score of 90

  1. マップを使用してオブジェクト内のオブジェクトの配列を解析するか、JavaScriptを使用してforEachを解析しますか?

    以下は、マップを使用してオブジェクト内のオブジェクトの配列を解析するコード、またはJavaScriptを使用してforEachを解析するコードです- 例 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8" /> <meta name="viewport" content="width=device-width, initial-scale=1.0" /> <title>Do

  2. JavaScriptを使用してオブジェクトを単一のオブジェクト配列にマージする方法は?

    以下は、オブジェクトを単一のオブジェクト配列にマージするコードです- 例 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8" /> <meta name="viewport" content="width=device-width, initial-scale=1.0" /> <title>Document</title> <style>