首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    讲讲标准的 Promise样?

    作者:feix760 序言 不同项目下lib里的promise/deferred往往差异化最多的,用起来和自己的习惯相比经常是缺胳膊少腿,因此聊聊标准的Promise样的。...不同的 Promise 差异基本表现如下: 构造Promise对象 new Promise().resolve() ornew Pomise(function(resolve, reject) {})...标准的 Promise 构造 : new Promise(function(resolve, reject) {}) 静态方法 : Promise.all(iterable) Promise.race(...不标准的使用 构造Promise对象: new Promise().resolve() ( 请使用new Promise(function(resolve, reject) {}) ) .done()...规范 npm promise 支持标准es6规范,增加了done()等方法 npm node-promise 支持标准es6规范,增加了更多的工具方法,人气不如npm promise jquery promise

    51300

    什么promise?

    大家好,又见面了,我你们的朋友全栈君。 什么promisePromise,简单说就是一个容器,里面保存着某个未来才会结束的事件(通常是一个异步操作)的结果。...从语法上说,promise 一个对象,从它可以获取异步操作的的最终状态(成功或失败)。...Promise一个构造函数,对外提供统一的 API,自己身上有all、reject、resolve等方法,原型上有then、catch等方法。...Promise的两个特点 Promise 有以上三种状态,只有异步操作的结果可以决定当前哪一种状态,其他任何操作都无法改变这个状态 Promise的状态一旦改变,就不会再变,任何时候都可以得到这个结果...const promise = new Promise((resolve, reject) => { // do something here ...

    19510

    能让 JS 执行的 JavascriptCore ,到底

    那它们如何组合在一起的呢?往下看。 JSVirtualMachine:JS 虚拟机 JavaScript 代码在由 JSVirtualMachine 类表示的虚拟机中执行。...JSValue JSValue 你必须使用的主要数据类型:它可以表示任何可能的 JavaScript 值。...下图显示了上述每个部分之间如何协同工作的: image.png 现在你对 JavaScriptCore 框架中已经有了初步的了解。接下来,我们来看看 IOS 代码与 JS 代码之间如何调用的。...JSExportJavaScriptCore框架里的一个协议。如果一个协议遵守了JSExport,那么该协议的方法会对JS开放,允许JS直接调用)。...如果你导出的一个类的方法时,JavascriptCore 框架则会在构造函数上创建一个 Javascript 函数。

    1.4K20

    什么Promise

    Promise,前端绕不过去的坎,请说说你对promise的理解,请实现一个简单的promise,类似问题比比皆是,今天给大家捋捋 什么Promise Promise 对象⽤来进⾏延迟( deferred...) 和异步( asynchronous ) 计算 Promise的设定是一个不可逆的状态机,包含:“PENDDING”,“RESOLVED”,“REJECTED”,三种状态 Promise基本用法 var...链路上所有抛出的异常 all 方法可以将多个Promise实例包装成一个新的Promise实例。...同时,成功和失败的返回值不同的,成功的时候返回的一个结果数组,而失败的时候则返回最先被reject失败状态的值。...race 方法就是赛跑的意思,谁运行的快,就返回谁的结果,不管结果本身成功状态还是失败状态。

    19020

    JS高阶(一)Promise

    抽象表达: PromiseES6中新增的规范; Promisejs中异步编程的新解决方案(旧方案采用函数回调); 具体表达: 从语法上说:Promise一个构造函数; 从功能上说:Promise...promise 对象; 说明:返回一个成功/失败的 promise 对象; //创建promise.resolve对象 //如果传入的对象为 非promise对象 则返回的一个 成功的promise...对象; 说明:只返回一个失败的 promise 对象; //创建promise.resolve对象 //如果传入的对象为 非promise对象 则返回的一个 成功的promise对象 //如果传入的对象...如果返回值一个非promise类型的数据 => 成功 // return 521; // 2.如果返回的一个promise对象 // return new Promise((resolve,...; 如果表达式 promise 对象,则 await 返回的 promise 成功的值; 如果表达式其他值,则将此值作为 await 的值进行返回; async function main(){

    2.4K10

    怎么理解JS Promise

    一、何为Promise 在MDN web docs 里面这么解释 Promise的: Promise 对象是一个代理对象(代理一个值),被代理的值在Promise对象创建时可能未知的。...只要我们的英语水平初中生的水平,就可以知道 promise 这个英语单词的意思 “承诺”。是的Promise就是“承诺” 的意思。...js异步操作通过js的事件循环机制EventLoop实现的。...总结起来js引擎对程序的执行顺序:1。先执行同步任务的程序 2。 在执行异步任务里的微任务 3。所有微任务都执行完了后就执行异步的宏任务,但这里一个一个宏任务去执行,不是一下子执行完。...after");//同步任务 } testFn(); 上图结果证明了上述所说的js的执行顺序 。

    11.7K30

    什么Promise呢?

    4、Promise 什么Promise呢? ES6中一个非常重要和好用的特性就是Promise 但是初次接触Promise会一脸懵逼,这TM是什么东西?...Promise到底做什么的呢? Promise异步编程的一种解决方案。 那什么时候我们会来处理异步事件呢? 一种很常见的场景应该就是网络请求了。...我们更加期望的一种更加优雅的方式来进行这种异步操作。 如何做呢?就是使用PromisePromise可以以一种非常优雅的方式来解决这个问题。...new Promise很明显创建一个Promise对象 小括号中((resolve, reject) => {})也很明显就是一个函数,而且我们这里用的之前刚刚学习过的箭头函数。...如果失败的,那么通常我们会调用reject(error),这个时候,我们后续的catch会被回调。 OK,这就是Promise最基本的使用了。

    30430

    JSpromise是什么?

    Promise异步编程的一中解决方案,最早由社区提出的,es6中正式的将其纳入,他一个对象,可以获取到异步的操作,他相比传统的回调函数,更加的强大和合理,避免了回调地狱。...Promise实列有三个状态: – pending (进行中) – resolved (成功) – rejected(失败) 当要处理某个任务的时候,promise的状态pending,任务完成状态就变成了...5finally() 他不管promise时什么状态都会执行的都会去执行的,他不接受任何的参数。 Promise的优点: – 对象的状态不受外界的影响,只有异步的操作结果才能改变他的状态。...– 如果不设置回调函数去接受,promise内部会报错,不会映射到外部 – 处在pending(进行中)时 ,外部无法得知进展到那一步 总结: Promise最早由社区提出的,在es6才被正式的纳入规范中...,是为了解决异步编程的一种方案 他一个构造函数,接受一个函数作为参数,返回一个Promise实列。

    3.8K10

    JS异步执行,Promise用法

    Promise Promise 异步编程的一种解决方案,比传统的解决方案——回调函数和事件——更合理且更强大。...值得注意的Promise新建后就会立即执行。...async函数对 Generator 函数的改进,async 函数必定返回 Promise,我们把所有返回 Promise 的函数都可以认为异步函数。...特点体现在以下四点: 内置执行器 更好的语义 更广的适用性 返回值 Promise await   顾名思义,等待。正常情况下,await命令后面一个 Promise 对象,返回该对象的结果。...如果不是 Promise 对象,就直接返回对应的值。另一种情况,await命令后面一个thenable对象(即定义then方法的对象),那么await会将其等同于 Promise 对象。

    5.4K30
    领券