文章详情页
javascript - 请问下面这个promise为什么会返回这个值?
浏览:152日期:2023-09-21 14:36:59
问题描述
function timeout(ms) { return new Promise((resolve, reject) => { setTimeout(resolve, ms, ’done’); });}timeout(100).then((value) => { console.log(value);});
请问为什么会返回’done’,setTimeout不是只有两个参数?为什么timeout执行后 resolve会拿到’done’
问题解答
回答1:https://developer.mozilla.org...
向延迟函数传递额外参数的功能
回答2:setTimeout 第一个参数是回掉函数,第二个是延迟回掉的时间,第三个参数之后就是向回掉函数的参数。你的这种写法就相当于
setTimeout(function () { resolve(’done’)}, ms)
标签:
JavaScript
相关文章:
1. $fields = $values = [];这条代码一直定义不了,一直报错,老师的源码也是被报错的,执行不了,请问该怎么解决这个问题2. python - 求一个在def中可以实现调用本def满足特定条件continue效果的方法(标题说不太清楚,请见题内描述)3. java - mybatis怎么实现在数据库中有就修改,没有就添加4. javascript - 用表单提交两个时间段请求后台返回对应数据时出现的一些问题!5. MYSQL新建用户设置可以远程访问的问题6. angular.js - angularjs的自定义过滤器如何给文字加颜色?7. mysql - SQL操作时间的函数?8. docker api 开发的端口怎么获取?9. docker内创建jenkins访问另一个容器下的服务器问题10. node.js - nodejs和前端JavaScript 字符串处理结果不一样是什么原因?
排行榜
![$fields = $values = [];这条代码一直定义不了,一直报错,老师的源码也是被报错的,执行不了,请问该怎么解决这个问题](http://www.haobala.com/attached/image/news/202205/093622cb60.png)