妙味课上利用splice进行数组去重为什么要 j--
var arr = [ 1,2,2,4,4,5,8,8,9,0,4,4 ]; for ( var i=0; i<arr.length; i++ ) { for ( var j=i+1; j<arr.length; j++ ) { if ( arr[i] == arr[j] ) { arr.splice( j, 1 ); j--; } } } console.log( arr );
因为每次删掉一个后,数组会自动向前补齐,然而 j++ 会让代码漏掉一次判断,结果就不敬人意