// ES6 Set集合数据类型
const ordersSet = new Set([
'Pasta',
'Pizza',
'Pizza',
'Risotto',
'Pasta',
'Pizza',
]);
// 只会显示不重复的数据
console.log(ordersSet);
// 集合可拆分字符串
console.log(new Set('Jonas'));
// 检查集合中有多少种不同的数据
console.log(ordersSet.size);
// 检查集合中是否包含此数据
console.log(ordersSet.has('Pizza'));
console.log(ordersSet.has('Bread'));
// 集合中添加数据,类似于数组的添加方法
ordersSet.add('Garlic Bread');
// 集合中删除数据,类似于数组的删除方法
ordersSet.delete('Risotto');
// 删除集合中所有数据
// ordersSet.clear();
// set也可以进行循环操作
for (const order of ordersSet) console.log(order);
// 例子
const staff = ['Waiter', 'Chef', 'Waiter', 'Manager', 'Chef', 'Waiter'];
// 使用... 扩展运算符,构建新的数组
const staffUnique = [...new Set(staff)];
console.log(staffUnique);
// 利用这个方法可以得出数组中 不重复的数据数量
console.log(new Set(staff).size);
// 利用这个方法可以得出一个字符串有多少个字母
console.log(new Set('jonasschmedtmann').size);
// Set方法不完全替换数组