Я пытаюсь узнать, как использовать filter (), используя javascript со строками. Моя идея состоит в том, чтобы использовать filter (), чтобы найти все вхождения, которые имеют одинаковое строковое значение в массиве, и использовать те, которые выводят все имена, имеющие одинаковую оценку из другого массива.
Но мне до сих пор удавалось только напечатать все имя учащегося с соответствующей оценкой, а не, например, только все имена, которые имеют оценку 'C'.
Что я пробовал это далеко, чтобы ввести значение / класс в текстовое поле, чтобы я мог использовать эти значения для поиска в массиве. Я реализовал базовый c код, который должен быть в состоянии решить мою миссию этого кода. Но ничего не происходит, если я не использую для l oop, тогда он печатает все имена с их соответственно оценкой. И насколько я понял из прочитанного, мне не нужно было использовать что-либо для l oop, чтобы заставить код делать то, что я хочу.
Я чувствую себя застрявшим.
Я предполагаю, что это зависит от того, что мне не удалось найти какие-либо примеры, в которых используются строки, которые должны быть такими же, как все, что я нашел на этом этапе, - это пример, который использует проверки строковых значений после их длины, а не для условий, которые я хочу сделать код для.
Возможно, я пропустил нужную мне информацию, но пока я не видел ничего похожего на то, что могло бы помочь мне понять, как решить эту проблему.
это это стиль информации какого-то источника, который я нашел, и все остальное, что я нашел, было очень похоже на это.
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/filter https://www.geeksforgeeks.org/javascript-array-filter https://www.javascripttutorial.net/javascript-array-filter/
Я не уверен, должен ли я показывать какой-либо код или нет, но здесь все равно идет.
var studentArray = ["Clara", "Andreas", "Emilio", "Sarah", "Alice", "Victoria", "Thomas", "Roberta"];
var gradeArray = ["A", "B", "C", "A", "D", "C", "E", "E"];
function input() {
var grade = document.getElementById("grade").value;
return grade;
}
function getGradesToNames() {
var filteredArray = gradeArray.filter(input);
for (var i = 0; i < filteredArray.length; i++){
document.getElementById("output2").innerHTML += studentArray[i] + " " + filteredArray[i] + "<br/>";
}
}
function print() {
input();
getGradesToNames();
}
Я знаю, что я начинающий, но Я надеюсь, что кто-то может помочь мне, направляя меня в правильном направлении. Заранее спасибо.