我正在創建座標平面三個連續遊戲,所以我必須找出數組中是否有三個相同值的數字但是沒有排序數組,因爲該數組表示在遊戲過程中添加到座標平面上的點的x座標... 例如,假設我已將6個點添加到座標平面並且x座標存儲在下一個數組中:JS查找數組中重複值的索引,如果有兩個以上重複的數據
var arr = [2,2,3,2,7,3];
我所需要的循環,因爲數字2發生在陣列3次,將只計算值2的出現,所以輸出應該是一個新的數組(稱爲指數例如陣列)與所述精確索引NMB 2次出現在ARR ...的
indices = [0,1,3]
環路應該THEREFOR「復位」時,涉及到ARR的端部,如果某個值的出現的次數小於3 ...
我已經嘗試了下一個代碼,但它不起作用,就像我之前所描述的那樣,因爲它計算了數字3的出現次數,所以,如果數值較少,它不會「重置」超過2 ...
var arr = [2,2,3,2,7,3];
var index = [];
var count = 0;
var current;
for(var i = 0;i<arr.length;i++){
current = arr[i];
//-------------------------------
for(var j=i+1;j<arr.length;j++){
if(arr[j]===current){
count++;
index.push(j);
//+++++++++++
if(j===arr.length-1){
if(count<2){
count = 0;
index = [];
i++;
}
else{
index.unshift(i);
break;
}
}
//+++++++++++
}
}
//-------------------------------
}
alert(index);
感謝任何幫助或建議...
亞歷山德拉
zb'我剛剛運行代碼片段,它完美的工作!不幸的是,我從來沒有在這裏發佈,所以我不知道如何喜歡你的答案或類似的東西... – Alex
只是大拇指和打勾的標記,附近的櫃檯 –
我真的很愚蠢,我不小心點擊了箭頭除了你的回答,現在除了我的帖子還有-1以上,正如我之前提到我從未在這裏發佈過的,現在我不知道如何撤消這個動作?之後,我多次點擊了箭頭,但沒有發生任何事情......對不起... – Alex