1. Promise
const p1 = new Promise(function(resolve,reject){
resolve('任务一')
})
.then(function(data){
console.log(data)
})
const p2 = new Promise(function(resolve,reject){
setTimeout(function(){
resolve('任务二')
},200)
})
.then(function(data){
console.log(data)
})
console.log('主线程任务')
Promise.all([p1,p2])
.then(data => {
console.log('任务三')
})
Promise.race([p1,p2])
.then(data => {
console.log('任务三')
})
2. Generator函数
- 概念,在function关键字后面写一个*,表示一个generator函数,generator通过yield关键字来定义任务
function* p1(){
yield '任务1';
yield '任务2';
yield '任务3';
yield '任务4';
yield '任务5';
yield function* p2() {
yield '任务7'
}
return '任务6'
}
var p = p1();
console.log(p.next())
console.log(p.next())
console.log(p.next())
console.log(p.next())
console.log(p.next())
console.log(p.next())
console.log(p.next())
console.log(p.next())