promis:异步编程
2024-08-23 10:02:21
promise对象用于延迟计算和异步计算:一个promise对象代表着一个还未完成,但预期将来完成的操作
Image.png
Image.png
打印结果如下:
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title></title>
</head>
<body>
<script>
console.time("Promise");
//resolve执行成功后调用
//reject执行失败时调用
new Promise(function(resolve, reject) {
setTimeout(function() {
resolve("定时器");
}, 1000 * 2);
}).then(function(result) {
console.log(result);
console.timeEnd("Promise");
});
</script>
</body>
</html>
Image.png
必须要加返回值
Image.png
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title></title>
</head>
<body>
</body>
<script>
console.time('Promise');
//resolve 执行成功后调用
//reject 执行失败时调用
new Promise(function(resolve,reject){
setTimeout(function(){
resolve("定时器执行完毕");
},1000*2);
}).then(function(result){
console.log("第一个 then 有异步");
//对数据做处理
return new Promise(function(resolve, reject){
setTimeout(function(){
resolve({
"data" : result
});
},1000 * 2);
});
}).then(function(data){
//接收完整的数据
console.log(data);
console.timeEnd('Promise');
});
</script>
</html>
最新文章
- js学习笔记:webpack基础入门(一)
- ***HTML +CSS 总结与归纳
- MySQL学习(二)SQL语句的总结
- MyTtcp 测试网络带宽
- 【BZOJ-1565】植物大战僵尸 拓扑排序 + 最小割
- swiper 增加同页面增加2个滚动
- Spring day01笔记
- UVa 445 - Marvelous Mazes
- ecshop运行超过30秒超时的限制解决办法
- 怎样查看python的api
- 忘记redhat linux root密码怎么办
- bzoj2400
- MyBatis中别名的设置
- C#-获取字符的GBK编码值
- ABP安装,应用及二次开发视频
- C语言中关键字restrict的概念,使用范围,例子
- Navicat Premium 12.1.8.0安装与激活
- 性能监控工具以及java堆分析OOM
- CSS实现水平垂直同时居中的6种思路
- VS2010生成安装包制作步骤 (转)
热门文章
- Viewpager切换时pager页面的生命周期变化
- POJ 2039 Floyd
- 如何让hudson的两个job共用一个svn工作目录
- 51Nod 圆与三角形
- HDU 3594 The trouble of Xiaoqian 混合背包问题
- Gym 100952 C. Palindrome Again !!
- Spring3 整合MyBatis3 配置多数据源 动态选择SqlSessionFactory(转)
- HDU 1166 敌兵布阵 Segment Tree题解
- hdoj-1870-愚人节的礼物(栈)
- 測试CPU支持指令集AVX,AVX2,SSE情况的代码【VS2010调试通过】