標籤:function 一個 ie8 變數 作用 包括 return 思路 建立
/*數組去重*//*思路:將arr數組中的每一項相互進行比較方法:建立一個新的數組,存放arr[0] 將arr中每一項與res[j]比較,若有一個相等,則結束遍曆比較,通過break跳出,若每一項都不相等,則push到res通過建立m變數記錄是否全部不相等或者存在一個相等,相等則改變m的值,只有當m的值為1時表示全部不相等*//*問題:注意m的範圍 條件陳述式的條件*/function unique(arr) { var res = []; res.push(arr[0]); for (var i = arr.length - 1; i >= 0; i--) { var m =1; for (var j= 0; j< res.length; j++) { if (arr[i]== res[j]) { m=0; break; } } if(m!=0){ res.push(arr[i]); } } return res;}var arr = [12, 45,56,4,2,3,4,5,3,1,2];var ff = [];ff = unique(arr);for (var i = 0; i < ff.length; i++) { console.log(ff[i]);}
/*數組去重*//*思路:首先將數組排序,將排序後的第一個值賦值給res,遍曆arr,並與res的最後一個值比較,不等則push,否則跳過*//*問題,注意比較的對象,下標 表示*/function unique02(arr) { arr.sort(); var res = []; res.push(arr[0]); for (var i = 0 ;i<arr.length;i++) { if (arr[i]!=res[res.length-1]) { res.push(arr[i]); } } return res;}var arr = [12, 45,56,4,2,3,4,5,3,1,2];var ff = [];ff = unique02(arr);for (var i = 0; i < ff.length; i++) { console.log(ff[i]);}
/*數組去重*//*思路:調用indexOf方法不存在即返回-1的特性*//*問題:注意indexOf方法並不是所有的瀏覽器都支援,IE8包括IE8都不支援*/function unique03(arr) { var res= []; for (var i = 0 ;i<arr.length;i++) { if (res.indexOf(arr[i])==-1) { res.push(arr[i]); } } return res;}var arr = [12, 45,56,4,2,3,4,5,3,1,2];var ff = [];ff = unique03(arr);for (var i = 0; i < ff.length; i++) { console.log(ff[i]);}
javascript 數組去重