有没有办法在javascript中插入项目作为Set的第一个元素,就像在下面的示例中在数组中完成一样?
arr['a','b','c']
arr.unshift ('d')
//Result
arr['d','a','b','c']
答案 0 :(得分:3)
没有直接的方法,也没有取消移动set元素的方法。
您可以将spread syntax ...
用于旧集合并生成新集。
var mySet = new Set(['a', 'b', 'c']);
mySet = new Set(['d', ...mySet]);
console.log([...mySet]);

答案 1 :(得分: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);