名称 | 宿主 | 类型 | 作用 | ||||||||
size | Set | property | 集合成员数量 | ||||||||
add | Set.prototype | method | 添加某个值 | ||||||||
delete | Set.prototype | method | 删除某个值 | ||||||||
has | Set.prototype | method | 是否存在某个值 | ||||||||
clear | Set.prototype | method | 清空所有值 | ||||||||
forEach | Set.prototype | method | 遍历值 |
let numSet = new Set([2, 4, 6, 2, 4, 6]); // { 2, 4, 5 }
numSet.size // 3
let numSet = new Set([2, 4, 6]);
numSet.add(4); // { 2, 4, 6 }
numSet.add(8) // { 2, 4, 6, 8 }
let numSet = new Set([10, 20, 30]);
numSet.delete(10); // { 20, 30 }
let numSet = new Set([10, 20, 30]);
numSet.has(20); // true
numSet.has(50); // false
let numSet = new Set([10, 20, 30]);
numSet.clear(); // {}
let numSet = new Set([10, 20, 30]);
numSet.forEach(v => console.log(v));
let numSet = new Set([10, 20, 30]);
for(let v of numSet) {
console.log(v); // 10, 20, 30
}
let arr1 = [ 1, 3, 5 ];
let arr2 = [ 5, 7, 9 ];
new Set([ ...arr1, ...arr2 ]); // { 1, 3, 5, 7, 9 }
let set = new Set([1, 3, 5, 1, 3, 5]);
let arr = [...set]; // 先转为数组, 再按照下标取值
let set = new Set([1, 3, 5, 1, 3, 5]);
let arr = Array.from(set) // 也可以通过数组from方法转数组
名称 | 宿主 | 类型 | 作用 | ||||||||
size | Map | property | 集合成员数量 | ||||||||
set | Set.prototype | method | 通过key,value形式添加新值 | ||||||||
get | Set.prototype | method | 通过key取值 | ||||||||
delete | Set.prototype | method | 通过key删除值 | ||||||||
has | Set.prototype | method | 是否存在某个key | ||||||||
clear | Set.prototype | method | 清空所有值 | ||||||||
forEach | Set.prototype | method | 遍历值 |
let numMap = new Map([
[new Date(), 100],
[{}, 200]
]);
numMap.size // 2
let obj = { name: '张三', age: 21 };
let map = new Map();
map.set(obj, '我不认识李四');
map.get(obj) // '我不认识李四'
let fibs = [1, 1, 2, 3, 5, 8];
let map = new Map();
map.set(fibs, '这是');
map.delete([1, 1, 2, 3, 5, 8]); // false
map.delete(fibs); // true
let date = new Date();
let map = new Map();
numSet.has(date); // false
numSet.set(date, '明月几时有,把酒问青天');
numSet.has(date); // true
let numMap = new Map([
[new Date(), 100],
[{}, 200]
]);
numMap.clear() // {}
let numMap = new Map([
[new Date(), 100],
[{}, 200]
]);
numMap.forEach((v, k) => console.log(v, k));
let numMap = new Map([
[new Date(), 100],
[{}, 200]
]);
for(let v of numMap) {
console.log(v); // 100, 200
}
let engagement = new Promise(function(yes, no) { // 定义10年期限,期限到后芳芳没嫁,就调yes,否则调no
// 这里的yes与no方法是Promise实例提供给我们的
setTimeout(function() {
yes();
}, 1000 * 10);
});
// then接收两个回调,第一个是成功回调,第二个是失败回调(可选)engagement.then(
() => console.log('太开心了,芳芳终于嫁给了我'),
() => console.log('我最终还是错过了芳芳')
);
// then第一个回调固定为成功回调engagement.then(
() => console.log('芳芳终于嫁给我了,我要带她环游世界!')
);
// 如果只想指定失败回调,可以通过catch方法来添加
engagement.catch(
() => console.log('我的世界开始变得暗淡无光')
);
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) | 黑马程序员IT技术论坛 X3.2 |