New Promise() 基础

这篇具有很好参考价值的文章主要介绍了New Promise() 基础。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

console.dir(Promise) 打印

new promise,JavaScript基础,javascript,前端,开发语言
Promise 是一个构造函数,本身身上有 all、reject、resolve 这几个方法,原型上有 then、catch 等方法。

所以 Promise new 出来的对象确定就有 then、catch 方法。

Promise 的构造函数接收一个参数,是函数,而且传入两个参数:resolve,reject,分别表示异步操做执行成功后的回调函数和异步操做执行失败后的回调函数。

resolve 做用

function a(){
    var b= new Promise(function(resolve, reject){
        //异步操做
        setTimeout(function(){
            console.log('完成');
            resolve('输出的东西');
        }, 2000);
    });
    return b;            
}
a().then(function(data){
    console.log(data);
    //后面能够用传过来的数据作些其余操做
    //在a()的返回上直接调用then方法,then接收一个参数,是函数,而且会拿到咱们在a中调用resolve时传的的参数。运行这段代码,会在2秒后输出“完成”,紧接着输出“输出的东西”。
});

注意点:

用 Promise 的时候通常是包在一个函数中,在须要的时候去运行这个函数再用异步的方法函数在 then 方法中,你也能够直接 return 数据而不是 Promise 对象,在后面的 then 中就能够接收到数据。

优点:Promise 的优点在于,能够在 then 方法中继续写 Promise 对象并返回,而后继续调用 then 来进行回调操做。

reject 的用法

then方法能够接受两个参数,第一个对应 resolve 的回调,第二个对应 reject 的回调。
因此咱们可以分别拿到他们传过来的数据。

catch 的用法

和 then 的第二个参数同样,用来指定 reject 的回调。
即使是有错误的代码也不会报错,与 try/catch 语句有相同的功能。

all 方法的用法

Promise 的 all 方法提供了并行执行异步操做的能力,而且在全部异步操做执行完后才执行回调。

all 会把全部异步操做的结果放进一个数组中传给 then ,能够并行执行多个异步操做,而且在一个回调中处理全部的返回数据。文章来源地址https://www.toymoban.com/news/detail-829669.html

到了这里,关于New Promise() 基础的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 深入理解 JavaScript Promise

    JavaScript中的Promise是一种处理异步操作的机制,它提供了一种优雅的方式来处理回调函数地狱和异步代码的流程控制。本文将深入介绍JavaScript中的Promise,帮助读者更好地理解和应用Promise。 Promise是一个代表异步操作的对象,它可以有三种状态:pending(进行中)、fulfilled(已

    2024年02月09日
    浏览(67)
  • [JavaScript理论学习] 什么是Promise (含如何判断一个值是Promise)

    本文旨在对 Promise 的规范进行解释, 便于读者在学习 Promise 的过程中梳理 Promise 之间的操作关系, 不对具体的代码实现和Promise用法进行解释. 比如, 为什么 [MDN-await] 中要提及一个 thenable 对象, 而且这个 thenable 对象 还可以和 Promise 实例 一样使用 await 等待处理, 这就涉及到了下面

    2024年02月09日
    浏览(44)
  • JavaScript如何解决返回[object Promise]

    当使用JavaScript中的Promise时,当您尝试访问Promise的值时,您可能会看到返回值为 [object Promise] 的情况。这是因为Promise是一种异步操作,它不能立即返回结果,而是需要等待操作完成后返回结果。 要访问Promise的值,您需要使用Promise的then()方法,该方法接受一个回调函数作为参

    2024年02月12日
    浏览(38)
  • [javascript核心-04]彻底弄懂Promise异步编程

    本文github地址:JavaScript_Interview_Everything 大前端知识体系与面试宝典,从前端到后端,全栈工程师,成为六边形战士 1.1. 快速上手 01快手上手.js 02.若传入的是另一个promise对象,则状态由传入的promise对象决定 03.若传入了一个实现了 then 方法的对象,则执行该then方法且由此方法

    2024年02月08日
    浏览(40)
  • 【vue】Vue-Router报错:Uncaught (in promise)Error: Navigation cancelled from “/“ to “/1“ with a new navig

    一、问题: 二、分析: 该错误是因为vue-router的内部 没有对编程式导航进行catch处理 ,所以在使用 this.$router.push() 和 this.$router.replace 进行路由跳转时,往同一地址跳转时或者在跳转的 mounted/activated 等函数中再次向其他地址跳转时会出现报错。但是在3.1.0版本及更高版本中,

    2024年02月04日
    浏览(65)
  • JavaScript 异步解决方案 Promise 全解析(转载)

    Promise 是一个 JS 的异步编程解决方案,解决了传统异步编程回调地狱的问题。 从语义上来说: Promise 是一个向外部传达异步编程操作消息的对象。 JS里一个promise可以有以下几种基本状态: nothing happened yet \\\"locked in\\\" to another promise fulfilled rejected 其中{1,2}为 pending ,{3,4}为 settl

    2024年02月08日
    浏览(61)
  • 深入学习JavaScript系列(七)——Promise async/await generator

    本篇属于本系列第七篇 第一篇:#深入学习JavaScript系列(一)—— ES6中的JS执行上下文 第二篇:# 深入学习JavaScript系列(二)——作用域和作用域链 第三篇:# 深入学习JavaScript系列(三)——this 第四篇:# 深入学习JavaScript系列(四)——JS闭包 第五篇:# 深入学习JavaScrip

    2023年04月08日
    浏览(48)
  • javascript中new操作的实现原理

    `new`  操作符用于创建对象的实例,它的实现原理可以简单描述为以下几个步骤: 1.创建一个新的空对象。 2.将新对象的原型属性(__proto__)指向构造函数(Constructor)的原型对象(constructor.prototype),这样,新对象就可以 继承构造函数原型对象 上的 属性 和 方法 。 3.执行构

    2024年02月06日
    浏览(36)
  • 【Javascript】构造函数之new的作用

    目录 new的作用 把对象返回了回来 无new 有new    把构造函数的this指向了要返回的对象   无new​编辑 有new new的执行流程 创建了新空对象 将构造函数的作用域赋值给新对象(this指向新对象) 执行构造函数代码 (为这个新对象添加属性) 返回新对象   当我们定义一个函数的时

    2024年02月07日
    浏览(51)
  • JavaScript /react 中new Map的用法

    size属性 : size属性返回Map结构的成员总数。 set(key, value) : set方法设置key所对应的键值,然后返回整个Map结构。如果key已经有值,则键值会被更新,否则就新生成该键。 get(key) get方法读取key对应的键值,如果找不到key,返回undefined。 has(key) has方法返回一个布尔值,表示某个键

    2024年03月15日
    浏览(55)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包