搜索
首页web前端js教程ES6 Promise 简单介绍
ES6 Promise 简单介绍Sep 21, 2017 am 09:24 AM
promise介绍简单

ES6,为了解决回调地狱的问题,推出了Promise,字面意思上来看是一个承诺,好多介绍promise的文章都是那种让人一看就眼晕的,我也是迷茫了好久,今天从我自身来说一说,promise到底是个什么东西
   Promise是一个对象(好多人要说,你这不是废话吗,js万物皆对象啊)你说得对。。。
   promise是一个对象,在对象内部进行调用;最常见的写法:

function GetPromise(someting){
    let p = new Promise(resolve,reject)            //dosometing
            resolve(str);
            reject(str)
        }    return p
    }

这是最常见的创建使用promise的方式,其调用方法为

GetPromise(somgting).then(function(){}).catch(function(){})

偷了个懒,很多人这个时候要骂娘了,这个then是什么,catch又是什么,还有resolve是哪来的,reject又是哪来的,我刚接触的时候,也在想这个问题,上网一搜就没有好好告诉我的。现在我用最简单的方法来解释一下,then是成功回调,catch是异常回调,这样大家能不能明白。大家写代码肯定会有用到判断的时候比如

    if(a=1){
        alert('我好帅啊‘)
    }else{
        alert('我怎么这么帅’)
    }

通过判断a来决定触发哪一条语句,promise只不过是这种高级写法,其内部提供的resolve,绑定为是then,reject绑定catch,我们在实例化promise对象时,在其内部进行判断,在何时触发哪一回调,在实际使用时,通过then,catch绑定具体的回调。我们在使用promise来进行异步操作时,将所有的成功回调都抽象成resolve,失败回调抽象成reject,在实际调用通过then,catch’来绑定具体的回调函数,更优雅,也更抽象,当然Promise有更多方法,但是我只是想总结一下入门,再复杂的就不是我讲解的了。

以上是ES6 Promise 简单介绍的详细内容。更多信息请关注PHP中文网其他相关文章!

声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
言出必行:兑现承诺的好处和坏处言出必行:兑现承诺的好处和坏处Feb 18, 2024 pm 08:06 PM

在日常生活中,我们常常会遇到承诺与兑现之间的问题。无论是在个人关系中,还是在商业交易中,承诺的兑现都是建立信任的关键。然而,承诺的利与弊也常常会引起争议。本文将探讨承诺的利与弊,并给出一些建议,如何做到言出必行。承诺的利是显而易见的。首先,承诺可以建立信任。当一个人信守承诺时,他会让别人相信自己是一个可信赖的人。信任是人与人之间建立起的纽带,它可以让人们更加

在Vue应用中遇到Uncaught (in promise) TypeError怎么办?在Vue应用中遇到Uncaught (in promise) TypeError怎么办?Jun 25, 2023 pm 06:39 PM

Vue是一款流行的前端框架,在开发应用时经常会遇到各种各样的错误和问题。其中,Uncaught(inpromise)TypeError是常见的一种错误类型。在本篇文章中,我们将探讨它的产生原因和解决方法。什么是Uncaught(inpromise)TypeError?Uncaught(inpromise)TypeError错误通常出现在

深入了解Promise.resolve()深入了解Promise.resolve()Feb 18, 2024 pm 07:13 PM

Promise.resolve()详解,需要具体代码示例Promise是JavaScript中一种用于处理异步操作的机制。在实际开发中,经常需要处理一些需要按顺序执行的异步任务,而Promise.resolve()方法就是用来返回一个已经Fulfilled状态的Promise对象。Promise.resolve()是Promise类的一个静态方法,它接受一个

实例解析ES6 Promise的原理和使用实例解析ES6 Promise的原理和使用Aug 09, 2022 pm 03:49 PM

利用Promise对象,把普通函数改成返回Promise的形式,解决回调地狱的问题。明白Promise的成功失败调用逻辑,可以灵活的进行调整。理解核心知识,先用起来,慢慢整合吸收知识。

Java语言中的数学模型介绍Java语言中的数学模型介绍Jun 10, 2023 am 11:57 AM

Java语言是一种高级编程语言,非常适合用于数学模型的构建和分析。数学模型是数学概念在现实世界中的应用,它们通常用于解决实际问题,例如预测未来趋势、优化生产和制造等。本文将介绍Java语言中常见的数学模型及其应用。线性规划线性规划是一种优化方法,在解决企业最优决策、资源配置以及生产计划等问题中广泛应用。在Java语言中,可以使用ApacheCommons

promise对象有哪些promise对象有哪些Nov 01, 2023 am 10:05 AM

promise对象状态有:1、pending:初始状态,既不是成功,也不是失败状态;2、fulfilled:意味着操作成功完成;3、rejected:意味着操作失败。一个Promise对象一旦完成,就会从pending状态变为fulfilled或rejected状态,且不能再改变。Promise对象在JavaScript中被广泛使用,以处理如AJAX请求、定时操作等异步操作。

PHP 函数返回 Promise 对象有什么优势?PHP 函数返回 Promise 对象有什么优势?Apr 19, 2024 pm 05:03 PM

优势:异步和非阻塞,不阻塞主线程;提高代码可读性和可维护性;内置错误处理机制。

一文带你轻松掌握Promise一文带你轻松掌握PromiseFeb 10, 2023 pm 07:49 PM

前端js学习中,让大家最难受的就是异步的问题,解决异步、回调地狱等问题时你必须得学会promise,对于多数前端程序员来说promise简直就是噩梦,本篇文章就是从通俗易懂的角度做为切入点,帮助大家轻松掌握promise

See all articles

热AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

AI Hentai Generator

AI Hentai Generator

免费生成ai无尽的。

热门文章

R.E.P.O.能量晶体解释及其做什么(黄色晶体)
3 周前By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.最佳图形设置
3 周前By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.如果您听不到任何人,如何修复音频
3 周前By尊渡假赌尊渡假赌尊渡假赌

热工具

Dreamweaver Mac版

Dreamweaver Mac版

视觉化网页开发工具

DVWA

DVWA

Damn Vulnerable Web App (DVWA) 是一个PHP/MySQL的Web应用程序,非常容易受到攻击。它的主要目标是成为安全专业人员在合法环境中测试自己的技能和工具的辅助工具,帮助Web开发人员更好地理解保护Web应用程序的过程,并帮助教师/学生在课堂环境中教授/学习Web应用程序安全。DVWA的目标是通过简单直接的界面练习一些最常见的Web漏洞,难度各不相同。请注意,该软件中

Dreamweaver CS6

Dreamweaver CS6

视觉化网页开发工具

EditPlus 中文破解版

EditPlus 中文破解版

体积小,语法高亮,不支持代码提示功能

SublimeText3 Linux新版

SublimeText3 Linux新版

SublimeText3 Linux最新版