比较两个数组中的值

时间:2015-12-19 02:29:24

标签: javascript html arrays loops

我有两个数组。

    var letterGrades = ["A", "A-", "B+", "B", "B-", "C+", "C", "C-", "D+", "D",  "D-"];
    var fall = ["Fall 2015", "A", "B", "A-"];

我需要做的是比较两个数组并打印出任何相等的值。

这是我到目前为止所尝试的......

function getGrades(semester){
if(semester === "Fall 2015"){
    for (var i = 1; i < 5; i++) {            
        for(var x = 0; x < letterGrades.length; x++){
            if(fall.data[0][i] == letterGrades[x]){
               console.log(fall.data[0][i]);
            }
        }
    }
}

getGrades("Fall 2015");

有关如何执行此操作的任何建议?现在,我没有得到任何回报。谢谢!

1 个答案:

答案 0 :(得分:1)

您没有收到任何回复,因为访问数组fall时出错。它是一维数组,但您可以使用fall.data[0][i]访问它。这会导致语法错误Uncaught SyntaxError: Unexpected end of input

你可以在索引1开始的秋天循环遍历每个元素,并在每次迭代中检查当前字符是否在letterGrades中,如下所示:

var letterGrades = ["A", "A-", "B+", "B", "B-", "C+", "C", "C-", "D+", "D",  "D-"];
var fall = ["Fall 2015", "A", "B", "A-"];

function getGrades(semester){
    if(semester === "Fall 2015"){
        for (var i = 1; i < fall.length; i++) {            
            if (letterGrades.indexOf(fall[i]) >= 0) {
                console.log(fall[i]);
            }
        }
    }
}

getGrades("Fall 2015");
相关问题