4--面试总结-promise
2024-10-07 09:25:59
- promise
异步原理:
- 定义:promise是异步编程的解决方案,可以解决异步回调地狱的问题;
- 原理:三种状态两种结果的一个状态机;
三种状态(pending,fulfilled,rejected)
两种结果:(success,error) - promise.reject与promise.resolve的区别
promise.reject代码实例
var failurestub = sinon.stub(xhr, "request").returns(Promise.reject(new Error("bad!")));
返回一个使用接收到的值进行了reject的新的promise对象。
而传给Promise.reject的值也应该是一个Error类型的对象。
*** 另外,和promise.resolve不同的是,即使Promise.reject接收到的参数是一个promise对象,该函数也还是会返回一个全新的promise对象。
var r = promise.reject(new Error('error'));
console.log(r === Promise.reject(r)); //false - promise.race
var p1 = Promise.resolve(1),
var p2 = Promise.resolve(2),
var p3 = Promise.resolve(3);
Promise.race([p1, p2, p3]).then(function(){
promise.log(value); //1
})
参数promise数组中的任何一个promise对象如果变为resolve或者reject的话,该函数就会返回,并使用这个promise对象的值进行resolve或者reject,简单言之:谁执行的快,先输出谁的结果;
- async/await
最新文章
- Python开发程序:学员管理系统(mysql)
- kafka 安装
- mac osx 制作安装u盘
- 12套swift学习资源分享
- Zabbix页面遇到历史记录的乱码需要修改数据库
- 【Xamarin 挖墙脚系列:IOS 开发界面的3种方式】
- c#生成word文档
- Java之JSP基础语法
- Django 1.10中文文档-聚合
- Windows cmd命令反斜杠问题
- Python中使用MongoEngine3
- JS的javascript:void(0)用法
- js中的“默默的失败”
- 自己用习惯的idea快捷键笔记
- mybatis异常解决:class path resource [SqlMapConfig.xml] cannot be opened because it does not exist
- 和我一起打造个简单搜索之IK分词以及拼音分词
- C#学习笔记(30)——系统自带委托Func和Action
- java try catch 异常后还会继续执行吗
- 在Linux下判断系统当前是否开启了超线程
- C# .net MD5加密函数