国产成人精品亚洲777人妖,欧美日韩精品一区视频,最新亚洲国产,国产乱码精品一区二区亚洲

您的位置:首頁技術(shù)文章
文章詳情頁

javascript - 第二個for循環(huán)里面的j--什么意思?

瀏覽:132日期:2023-04-19 09:53:52

問題描述

var arr = [ 1,2,2,4,2 ];

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--; }}

}

問題解答

回答1:

如果遇到重復(fù)項(xiàng),從 arr 中 splice 掉。splice 掉之后,數(shù)組下一項(xiàng)仍是當(dāng)前索引,所以要先 j--; 再循環(huán)中的 j++,保持索引正確。

比如,外層第2次循環(huán),i = 1,j = 2,然后 arr[1] 是2,arr[2] 也是2,arr[2] 會被 splice 掉,數(shù)組變成 [1,2,4,2],下個元素 4 仍是第 2 項(xiàng),如果不先 j--的話會漏掉。

回答2:

樓上說的沒錯。補(bǔ)充一下,直接用 filter 就可以實(shí)現(xiàn)了。

var arr = [ 1,2,2,4,2 ];arr.filter(function (e, i) { return arr.indexOf(e) === i;})

標(biāo)簽: JavaScript
相關(guān)文章:
主站蜘蛛池模板: 双江| 延边| 施秉县| 榆中县| 仪陇县| 封丘县| 保德县| 谷城县| 乌拉特前旗| 平和县| 林周县| 平安县| 二连浩特市| 团风县| 无极县| 松潘县| 平泉县| 确山县| 浑源县| 丹凤县| 花垣县| 遂平县| 中西区| 基隆市| 临泉县| 驻马店市| 竹溪县| 仙游县| 玉田县| 台中市| 琼海市| 淮滨县| 调兵山市| 麦盖提县| 察隅县| 清水河县| 德令哈市| 栖霞市| 茶陵县| 兴城市| 永修县|