二维数组使用includes无效(cannot read property 'include

程序的目的是arr[i][1](也就是字符串)去重,并把去重后的结果插入result内,并返回,我的代码如下:

var arr = [ [ 88, 'Bowling Ball' ],

  [ 2, 'Dirty Sock' ],

  [ 3, 'Hair Pin' ],

  [ 12, 'Toothpaste' ],

  [ 2, 'Hair Pin' ],

  [ 3, 'Half-Eaten Apple' ],

  [ 7, 'Toothpaste' ],

  [ 2, 'Hair Pin' ],

  [ 3, 'Half-Eaten Apple' ],

  [ 67, 'Bowling Ball' ],

  [ 7, 'Toothpaste' ],

  [ 3, 'Half-Eaten Apple' ],

  [ 67, 'Bowling Ball' ],

  [ 7, 'Toothpaste' ],

  [ 2, 'Hair Pin' ],

  [ 3, 'Half-Eaten Apple' ],

  [ 67, 'Bowling Ball' ] ];


var result = [[0,'test']];


arr.forEach(function(e,i){

  

  if(!result[i].includes(e[1])){

    result.push(e);

  }

  

});

  


console.log(result);

可是在调试的时候,系统给我的反馈是:TypeError: Cannot read property 'includes' of undefined

我不是很明白,因为result[i]也应该是一个数组才对啊,怎么会出现这种情况呢?

求大神解答,谢谢。


月关宝盒
浏览 1264回答 1
1回答

智慧大石

!result[i].includes(e[1])大哥,你这result在位置0后边都是undefined了,当然TypeError: Cannot read property 'includes' of undefined
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript