
Promise
_处女座程序员的日常
做正确的事,然后把事情做正确。理性对待一切!
展开
-
2021大厂前端高频面试题目
1.vue中key的值(多家问过);2.webpack中常用的配置(多家问过);3.vue的双向绑定原理(需要掌握到源码层面);4.强缓存和协商缓存;5.项目中的难点是什么,怎么解决的?6.跨域:跨域后浏览器能不能收到服务端响应?可以;但是js拿不到数据(浏览器的同源策略);7.父子组件传参;8.promise的源码;9.xss攻击和csrf攻击;10.vue中自定义组件 ,mixin API。...原创 2021-11-08 22:56:23 · 658 阅读 · 1 评论 -
promise是什么?
Promise 是一个对象,保存着未来将要结束的事件,它有两个特征:1、对象的状态不受外部影响,Promise 对象代表一个异步操作,有三种状态,pending进行中,fulfilled 已成功,rejected 已失败,只有异步操作的结果,才可以决定当前是哪一种状态,任何其他操作都无法改变这个状态,这也就是 promise 名字的由来。2、一旦状态改变,就不会再变,promise 对象状态改变只有两种可能,从 pending 改到fulfilled 或者从 pending 改到 rejected原创 2021-09-05 11:37:35 · 133 阅读 · 0 评论 -
async和promise问题
promise是为了解决回调地狱的问题,在promsie面世之前会出现回调地狱,这不利于代码的读写和维护。假如一位新人看到下面的代码,是不是顿时对编程失去了兴趣呢?为什么会出现这个问题,是因为有些异步任务是要按照顺序执行。所以只能嵌套。于是Promise出现了,可通过Promsie.then()的链式调用解决上述问题。具体如何实现?下面看代码说明// 要求先去学习,再去运动。// 注:p1是个Promsie p1 = function getKnowledge( ){ return原创 2021-08-23 23:39:56 · 529 阅读 · 0 评论 -
Promise.then返回值问题
then方法返回的是一个新的Promsie实例p1 = new Promise((resolve,reject)=>{resolve("成功呢");})p2= p1.then(value=>{ console.log(value);},reason=>{ console.log(reason);})console.log(p1);console.log(p2)打印结果如下:若then函数中没有返回值,默认也会返回一个Promsie。...原创 2021-08-23 18:47:38 · 789 阅读 · 0 评论 -
手写Promise.all()方法
有1个promise报错了,其他的promis会执行吗?会的,因为Promsie在实例化时候就已经执行完了。手写Promise.all()方法function PromiseAll(promiseArray){ //返回的一定是个proimse return new Promise((resolve,reject)=>{ //首先判断传入的是否涉及数组 if(!Array.isArray(promiseArray)){ retu.原创 2021-08-23 16:02:43 · 275 阅读 · 1 评论