定义promise方法:
function getFirstName() {
console.log('first start')
return new Promise(function (res, rej) {
console.log('getFirstName');
setTimeout(function () {
console.log('fisrt finished')
res("Bruce")
}, 2000)
})
}
function getSecondName() {
console.log('second start')
return new Promise(function (res, rej) {
console.log('getSecondName');
setTimeout(function () {
console.log('second finished')
res("Lee")
}, 1000)
})
}
串行
async function getName() {
let firstName = await getFirstName();
console.log('firstName:', firstName)
console.log('------------')
let secondName = await getSecondName();
console.log('--------->>>>>>')
console.log('firstName:', firstName)
console.log('secondName:', secondName)
return {
firstName,
secondName
}
}
getName()
.then(function (response) {
console.log('response:', response)
})
并发
async function getNameComplicate() {
let promises = [];
promises.push(getFirstName())
promises.push(getSecondName())
let [firstName, secondName] = await Promise.all(promises)
return{
firstName,
secondName
}
}
getNameComplicate()
.then(function (res) {
console.log('res:', res)
})
近期评论