在 es6 中,引入了乙個新的資料結構型別:set。而 set 與 array 的結構是很類似的,且 set 和 array 可以相互進行轉換。
set 物件允許你儲存任何型別的唯一值(set 物件儲存的值總是唯一的),無論是原始值或者是物件引用。
...
es6擴充套件運算子
方法
描述add
新增某個值,返回set物件本身。
clear
刪除所有的鍵/值對,沒有返回值。
delete
刪除某個鍵,返回true。如果刪除失敗,返回false。
foreach
對每個元素執行指定操作。
has返回乙個布林值,表示某個鍵是否在當前 set 物件之中。
es6 的去重:
// 運算元組
var arr = [1, 2, 3, 3, 1, 4];
array.from(new set(arr)); // [1, 2, 3, 4]
[...new set(arr)]; // [1, 2, 3, 4]
// 操作字串
new set('ice doughnut'); // set(11)
[...new set('ababbc')].join(''); // "abc" 字串去重
並集並集:以屬於a或屬於b的元素為元素的集合成為a與b的並(集)
var a = new set([1, 2, 3]);
var b = new set([4, 3, 2]);
var union = new set([...a, ...b]); //
交集交集: 以屬於a且屬於b的元素為元素的集合成為a與b的交(集)
var a = new set([1, 2, 3]);
var b = new set([4, 3, 2]);
var intersect = new set([...a].filter(x => b.has(x))); //
差集差集:以屬於a而不屬於b的元素為元素的集合成為a與b的差(集)
var a = new set([1, 2, 3]);
var b = new set([4, 3, 2]);
var difference = new set([...a].filter(x => !b.has(x))); //
去重 物件陣列const ary = [, , , ];
const myseta = (ary) => ;
console.log(myseta(ary)); // [, , ]
new Set 陣列去重
new set 用來去重陣列。set類似於陣列,區別在於它所有的成員都是唯一的,不能有重複的值 數值去重 let arr 1,2,2,3 1,2,2,3 let set new set arr 去掉重複資料,返回結果是 set let newarr array.from set 將set轉化為陣列 ...
陣列去重的方法
我總共想出了三種演算法來實現這個目的 array.prototype.unique1 function return n array.prototype.unique2 function r n為hash表,r為臨時陣列 for var i 0 i this.length i 遍歷當前陣列 retu...
陣列去重的方法
1.第一種方法 有乙個需要去掉重複元素的陣列arr,定義乙個新陣列res,迴圈遍歷arr陣列中的每乙個元素,看res中是否存在,如果不存在,則push進去 function repeat arr repeat 1,3,5,7,9,12,15,21,34 2.利用物件屬性去重 每次迴圈取出原陣列的元素...