这是我的代码:
var nestedArr = [[1, 2, 3], [5, 2, 1, 4]];
var result;
for (var a = 0; a < nestedArr.length; a++) { // iterate nestedArr
for (var b = 0; b < nestedArr[a].length; b++) {
if (nestedArr[a+1].includes(nestedArr[a][b])) {
result.push(nestedArr[a][b]);
}
}
}
输出:
Error: Cannot read property 'includes' of undefined
。但是至少我可以确保几件事:1. JavaScript中存在数组的
includes()
方法2.在控制台中运行单个语句
nestedArr[a+1];
,给我数组[5, 2, 1, 4]
所以,我真的不理解
Error
吗?请帮我解决这个问题。谢谢。 最佳答案
var nestedArr = [[1, 2, 3], [5, 2, 1, 4]];
var result = [];
for (var a = 0; a < nestedArr.length; a++) { // iterate nestedArr
for (var b = 0; b < nestedArr[a].length; b++) {
if (nestedArr[a].includes(nestedArr[a][b])) {
result.push(nestedArr[a][b]);
}
}
}
console.log(result)
删除加号即可完成工作,基本上您尝试访问一个数组,但没有数组