promise老方法异步处理小demo
promise处理成功使用resolve回调函数,执行.then里面的方法,setTimeout也是异步的,所以经过一段时间,然后失败是使用reject回调函数的,就是.catch里面的方法
let news = []
news = [guan, qq, hei, lei] = [
{name: 'guan', say: 'haolei', m: 100},
{name: 'qq', say: 'ziran', m: 400},
{name: 'hei', say: 'fangqi', m: 200},
{name: 'lei', say: 'mbf', m: 1000}
]
// console.log(news)
let abc = {name: 'abc', say: 'hh', m: 1000}
news.push(abc)
// console.log(news)
let users = user => {
return new Promise((resolve, reject) => {
setTimeout(resolve, 1000 / user['m']*1000, user['name'] +'说' + user['say'] + '并且是' + 1000 / user['m'] + 's后')
})
}
users(qq).then(info => {
console.log(info)
return users(guan)
}).then(info => {
console.log(info)
return users(lei)
}).then(info => {
console.log(info)
return users(hei)
}).then(info => {
console.log(info)
return users(abc)
}).then(info => {
console.log(info)
return users(wwwwww)
}).then(info => {
console.log(info)
}).catch(err => {
console.log('222222'+err)
})
执行之后打印出来的就可以看见