1 function arrCheck(arr){ 2 var newArr = []; 3 for(var i=0;i<arr.length;i++){ 4 var temp=arr[i]; 5 var count=0; 6 for(var j=0;j<arr.length;j++){ 7 if(arr[j]==temp){ 8 count++; 9 arr[j]=-1; 10 } 11 } 12 if(temp != -1){ 13 newArr.push(temp+":"+count) 14 } 15 } 16 return newArr; 17 } 18 19 arrCheck([1,2,3,3,4]);
重點有三個:
1,通過嵌套for循環,把數組的每一項,跟整個數組中的所有項,比較一遍;
2,通過if判斷,如果有相等的項,count++,並把相等的項置為-1,這樣可以判斷等於-1的就是重復的,就不再加入新數組了;
3,用if判斷!=-1,決定是否加入新數組中,返回。