promis:异步编程
promise对象用于延迟计算和异步计算:一个promise对象代表着一个还未完成,但预期将来完成的操作
![](https://upload-images.jianshu.io/upload_images/5640239-82d99e995d355471.png)
![](https://upload-images.jianshu.io/upload_images/5640239-95d0aace0b59287c.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>
![](https://upload-images.jianshu.io/upload_images/5640239-a81a40f8b99dd7d8.png)
必须要加返回值
![](https://upload-images.jianshu.io/upload_images/5640239-2fbcb2b439b18862.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>
转载于:https://www.cnblogs.com/ting6/p/9725944.html
promis:异步编程相关推荐
- promise 的基本概念 和如何解决js中的异步编程问题 对 promis 的 then all ctch 的分析 和 await async 的理解
* promise承诺 * 解决js中异步编程的问题 * * 异步-同步 * 阻塞-无阻塞 * * 同步和异步的区别? 异步;同步 指的是被请求者 解析:被请求者(该事情的处理者)在处理完事情的时候的 ...
- ES6读书笔记-Promise与异步编程的爱恨纠葛
异步编程的背景 JS 引擎建立在单线程事件循环的概念上. 单线程( Single - threaded) 意味着同一时刻只能 执行一段代码, 与 Java 或 C++这种允许同时执行多段不同代码的多线 ...
- 【C++】多线程与异步编程【四】
文章目录 [C++]多线程与异步编程[四] 0.三问 1.什么是异步编程? 1.1同步与异步 1.2 **阻塞与非阻塞** 2.如何使用异步编程 2.1 使用全局变量与条件变量传递结果 实例1: 2. ...
- Python网络编程(4)——异步编程select epoll
在SocketServer模块的学习中,我们了解了多线程和多进程简单Server的实现,使用多线程.多进程技术的服务端为每一个新的client连接创建一个新的进/线程,当client数量较多时,这种技 ...
- 异步编程模型--使用 IAsyncResult 对象
先推荐阅读下面的资料: MSDN:异步编程设计模式 IBM developerworks: 使用异步 I/O 大大提高应用程序的性能 参考博文: 1.正确使用异步操作 2.Lab:体会ASP.NET异 ...
- 笑了,面试官问我知不知道异步编程的Future。
点击上方蓝色"方志朋",选择"设为星标" 回复"666"获取独家整理的学习资料! 荒腔走板 老规矩,先来一个简短的荒腔走板,给冰冷的技术文注 ...
- JavaScript 异步编程--Generator函数、async、await
JavaScript 异步编程–Generator函数 Generator(生成器)是ES6标准引入的新的数据类型,其最大的特点就是可以交出函数的执行的控制权,即:通过yield关键字标明需要暂停的语 ...
- @async 默认线程池_.NET Web应用中为什么要使用async/await异步编程?
布莱恩特:.NET Core开发精选文章目录,持续更新,欢迎投稿!zhuanlan.zhihu.com 前言 1.什么是async/await? await和async是.NET Framework ...
- 57 Node.js异步编程
技术交流QQ群:1027579432,欢迎你的加入! 欢迎关注我的微信公众号:CurryCoder的程序人生 1.Node.js异步编程 1.1 Node.js中的异步API 如果异步API后面的代码 ...
最新文章
- 洛谷P4301 [CQOI2013]新Nim游戏
- 四则运算题目生成程序(基于控制台)
- Leedcode10-linked-list-cycle-ii
- python界面编程pdf_Python Qt GUI快速编程——PyQt编程指南 中文pdf完整版[99MB]
- 【Kafka】Error when freeing index buffer (kafka.log.OffsetIndex) NullPointException
- 树莓派红外避障小车python_基于树莓派的环保“捡垃圾”机器人小车(避障、摄像、红外、WIFI)...
- 最简单的DX窗口程序
- Cgroup学习之——Ubuntu下交叉编译ARM平台libcgroup工具
- Ceph 撸源码系列(二):Ceph源代码里的那些锁 std::mutex(2 of 3)
- 云计算更适合小公司的八条原因
- 没有自制力,你有资格玩吗?
- 期货量化交易程序CTP入门指南 一
- sed编辑器之删除行
- 在linux安装编译vscode,Linux中安装 Visual Studio Code 详解
- 史上最全SQL基础知识总结
- #SORA#flask-RESTful的一些坑
- 计算机网络——IP数据报分析
- 7.OpenCvSharp图像的文件夹的批量读取、表单显示及多图拼接——c#OpenCvSharp学习笔记
- 时尚vs青春发表日志:我的高考故事
- Java的自学之旅15