2017-03-31 7 views
1

javascriptのSetの最初の要素として項目を挿入する方法は、下の例の配列で行われるのと同じですか?Javascript Set ES6

arr['a','b','c'] 
arr.unshift ('d') 
//Result 
arr['d','a','b','c'] 
+3

要素がセット内にすでにある場合は、それがどこにある滞在する古いものをしたいですか、またはフロントに移動しますか? – 4castle

答えて

2

直接的な方法でも、設定した要素のシフトを解除する方法もありません。

古いセットにはspread syntax ...を使用し、新しいセットを生成できます。

var mySet = new Set(['a', 'b', 'c']); 
 

 
mySet = new Set(['d', ...mySet]); 
 

 
console.log([...mySet]);

0

Setの順序は、項目が挿入されたときにより決定されます。目的に応じて、Setに項目を挿入し、必要に応じてこれらの値を抽出したりソートしたり、正しい順序で配列に挿入して、その配列からSetを作成することができます。

let standardSet = new Set(); 
 
standardSet.add('c'); 
 
standardSet.add('a'); 
 
standardSet.add('b'); 
 
let fromStandard = Array.from(standardSet); 
 
fromStandard.sort(); 
 
console.log(fromStandard); 
 

 
let arr = []; 
 
arr.unshift('c'); 
 
arr.unshift('b'); 
 
arr.unshift('a'); 
 
let fromArr = Array.from(new Set(arr)); 
 
console.log(fromArr);