ES6新增 Promise
promise
作用
1.解决延期问题
2.避免回调层级过深问题
promise代码示例:
//promise 解决了层级过深的问题,实现承诺
function say(str, time) {
return new Promise((reslove, reject) => {
setTimeout(() => {
reslove(str);
}, time)
})
}
say("是否可以加微信", 3000).then(res => {
console.log(res);
return say("我非常喜欢你", 5000).then(res => {
console.log(res);
return say("邀请你100年后一起", 2000).then(res => {
console.log(res)
})
})
})
回调函数代码示例:
<script type="text/javascript">
//老王看见一个漂亮的小姐姐
//3秒后,老王问是否可以加微信
//5秒后,小姐姐说,我非常喜欢你
//2秒后,老王对小姐姐后,邀请你100年后一起。。
//回调函数实现延期任务,层级多深(回调地狱)
function say(str,time,callback){
setTimeout(()=>{
console.log(str);
if (callback) {
callback();
}
},time)
}
say("是否可以加微信",3000,function(){
say("我非常喜欢你",5000,function(){
say("邀请你100年后一起",2000)
})
})
</script>
还没有评论,来说两句吧...