问题描述:这段代码里,move的第三个实参,赋值给形参后,是不是就把end替换掉
1位置的代码是不是就变成了
()={resolve()}() 这后面的括号是干嘛的?
登陆购买课程后可参与讨论,去登陆吧
同学你好,理解是对的。问题解答如下:
()={resolve()} 是个函数,函数加括号就是“调用函数”,写法等价于如下形式:
意思是“元素运动结束,触发transitionend事件后,就会执行fn函数,将Promise的状态,切换成成功”:
祝学习愉快!
老师,你好。图2 的第四步 把promise切换成成功状态是啥意思,实例化的Promise ,第一个参数resolve能直接给函数是什么原理? 根据前一章 Promise基本用法,传入参数要告诉是 resolve( ) 或者 reject 吧,不然promise 会显示 pending 状态。我的这描述能理解么?
解答如下:
1、Promise对象有两个自带的参数resolve、reject,二者都是函数形式,它们用来改变Promise对象的状态,这是固定知识点:
Promise对象内部有很多复杂的逻辑,这些逻辑支持上述描述。由于这些逻辑并没有暴露给我们,我们看不到,所以不需要知道、了解上述内容是怎么实现的,只需要会用就行。
2、改变Promise的状态后,then方法中的两个函数参数,才会相应执行并接收到数据。即如果想让then中的某个方法执行,则必须要改变Promise的状态:
而resolve、reject方法就是用来改变Promise的状态的,因此要调用二者之一。
调用resolve,就是将状态切换成“成功“(Promise自身把该状态起名成“成功”),对应执行then的第一个函数(看下图黄色标注):
调用reject,就是将状态切换成“失败”,对应执行then的第二个函数(看下图黄色标注):
如果不调用,Promise就是pending状态,就不会执行then中的方法了,代码也就停滞了。
恭喜解决一个难题,获得1积分~
来为老师/同学的回答评分吧
登录后可查看更多问答,登录/注册
入行前端,是明智的选择!市场需求大,就业前景好,入行门槛低,小白易上手 全新升级:技术更新,Vue3.0/TypeScript/React17.x; 技术更全面,从0基础到全栈开发再到大型项目构建
157 1
75 1
31 2
200 5
155 1
在线咨询
领取优惠
免费试听
领取大纲
恭喜解决一个难题,获得1积分~
来为老师/同学的回答评分吧
0 星