js promise

es6 新增的一个异步操作的方法 promise

简单的了解一下

promise ->

-成功

-失败

->决定去做这个事

->我放弃做这个事

两个参数 决定 = resolve  放弃=reject

new promise(function(resolve,reject){
    resolve('abc');
}).then(function(v){
    alert(v) // abc
})


new promise(function(resolve,reject){
    reject('abc');
}).catch(function(v){
    alert(v) // abc
})

当然 如果 是reject 还有另一种写法

new promise(function(resolve,reject){
    reject('abc');
}).then(function(v){
    alert(v) 
},function(){
    alert(1)
})

他这里会直接输出 1 跳过.then()

当然如果有catch()会直接执行catch()

promise 还有另一种写法

Promise.resolve(1).then(function(m){
    console.log(m) //1
})
Promise.reject(1).then(function(){
    console.log('13') 
},function(m){
    console.log(m) //1
})

 race 先最快输出谁

Promise.race([new Promise(function(resolve,reject){
     setTimeout(resolve,300,'one');
}),new Promise(function(resolve,reject){
     setTimeout(resolve,500,'two');
})]).then(function(l){
    console.log(i) // one
})

all

Promise.all([1,2,3]).then(function(m){
    console.log(m) 
})

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
JavaScript Promise是一种用于处理异步操作的对象。它可以解决回调地狱问题,并提供了一种更加优雅和可读的方式来处理异步代码。Promise对象有三个状态:pending(进行中)、fulfilled(已成功)和rejected(已失败)。引用中提到了Promise的用法详解,可以作为参考。 在引用中的例子中,可以看到Promise的执行是异步的。通过创建一个Promise对象,并在其构造函数中传入一个执行器函数(resolve和reject函数),可以在函数内部执行异步操作。当异步操作完成后,可以通过调用resolve函数将结果传递给then方法的成功回调函数。 在引用中的例子中,定义了一个greet函数,该函数返回一个Promise对象。在Promise的构造函数中,可以通过调用resolve函数来将结果传递给then方法的成功回调函数。在调用greet函数后,可以通过调用then方法来获取Promise对象的结果。在示例中,打印出了Promise对象(p)和成功回调函数(v)的结果。 总之,JavaScript Promise是一种用于处理异步操作的对象,可以通过调用resolve函数将结果传递给then方法的回调函数。它提供了一种优雅的方式来处理异步代码,避免了回调地狱问题。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *3* [js中的promise详解](https://blog.csdn.net/zyf971020/article/details/127015351)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] - *2* [Javascript Promise用法详解](https://download.csdn.net/download/weixin_38538312/12957140)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值