循環刪除數組元素

var arr = [1,2,2,3,2,4] ;
var len = arr.length ;
按照常規的思路,直接一個for循環,然後在循環裏面來個if判斷,在判斷中刪除掉指定元素即可。但是實際情況往往不會像預想的那樣順利運行

(1) splice函數, 關鍵從後往前遍歷

(function () {
 var arr = [1,2,2,3,4,5];
 var len = arr.length-1;
 //start from the top
 for(var i=len;i>=0;i--){
 console.log(i+"="+arr[i]);
 if(arr[i]==2){
  arr.splice(i,1);
 }
 }
 console.log(arr);
})();

(2) filter函數

var test = arr.filter(function(item){
  return item !== 2;
})

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章