私は学生の名前とそのさまざまな100mスプリントセッションでソートされた2D配列を持っています。データ配列のスニペットは、このように見えるかもしれません...多次元配列内のJavaScriptの平均値
Names Time(s)
ANDREWMICHEALSMITH 13.95
JOHNJAMESPETERSON 13.70
JOHNJAMESPETERSON 13.80
JOHNJAMESPETERSON 12.50
PETERMICHEALHEWITT 12.80
PETERMICHEALHEWITT 12.60
VICENTJAMESSMITH 13.10
VICENTJAMESSMITH 13.50
VICENTJAMESSMITH 13.80
VICENTJAMESSMITH 13.00
私は必死に下記のとおり、生徒の名前、その平均時間と、時限セッションの数を表示するには、テーブルを変換することが望ましい結果を必要としています...
Names Avg Time(s) Sessions
ANDREWMICHEALSMITH 13.95 1
JOHNJAMESPETERSON 13.33 3
PETERMICHEALHEWITT 12.70 2
VICENTJAMESSMITH 13.35 4
JavaScriptコードを作成したのは、最初のif文で残念ながら失敗しました。
未定義からプロパティ "0"を読み取ることができません。
このコードでは、n番目のセッション数を持つ学生は取得されず、まだセッション数が規定されていません。率直に言って、私のJavaの知識は、手元にあるタスクのために非常に限られています。私は最終結果に達するためにいくつかの助けが切望されています。
私は本当に感謝しています。
StudentList.sort();
for (var i=0; i<StudentList.length; i++){
if(StudentList[i][0] == StudentList[i+1][0]){
if(StudentList[i+1][0] == StudentList[i+2][0]){
if(StudentList[i+2][0] == StudentList[i+3][0]){
if(StudentList[i+3][0] == StudentList[i+4][0]){
StudentList[i][1] = (StudentList[i][1]+StudentList[i+1][1]+StudentList[i+2][1]+StudentList[i+3][1]+StudentList[i+4][1])/5;
StudentList.splice(i+1,3);
}else{
StudentList[i][1] = (StudentList[i][1]+StudentList[i+1][1]+StudentList[i+2][1]+StudentList[i+3][1])/4;
}
}else{
StudentList[i][1] = (StudentList[i][1]+StudentList[i+1][1]+StudentList[i+2][1])/3;
}
}else{
StudentList[i][1] = (StudentList[i][1]+StudentList[i+1][1])/2;
}
}
}
あなたの配列はどこにありますか? –