我有两个数组。
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");
有关如何执行此操作的任何建议?现在,我没有得到任何回报。谢谢!
答案 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");