Promise 笔记

本文深入探讨了Promise在解决前端异步编程中的回调地狱问题,从理论背景到实战应用,包括Promise的创建、then方法的使用、串行与并行执行策略,以及比赛执行场景的应用。通过Promise,开发者可以更优雅地处理复杂的异步流程。
摘要由CSDN通过智能技术生成

1 理论概念

1.1 背景

在前端开发过程中,使用异步编程方式,避免不了使用回调函数(callback), 多嵌套的callback函数将导致代码阅读性差,不利于后期维护。 甚至有个形象名称“回调地狱”。为了解决该问题,提出了 Promise 解决方案。

1.2 回调地狱

当业务逻辑复杂的时候,回调的嵌套过多,代码复杂度增加,可读性降低,维护起来也复杂,调试也复杂,这就是回调地狱。

asyncFunc1(opt, (...args1) => {
    asyncFunc2(opt, (...args2) => {
        asyncFunc3(opt, (...args3) => {
            asyncFunc4(opt, (...args4) => {
                // some operation
            });
        });
    });
});

2 实战

2.1 创建 Promise

可以使用 new Promise(function(resolve, reject) {})创建一个 Promise 对象,在业务逻辑中成功时调用 resolve 方法, 失败时调用 reject 方法。

    /**
     * 异步调用服务
     */
    function invokeServiceAsync(beanId, method, params, callback) {

        var request = {};
        request.beanId = beanId;
        request.method = method
        request.params = params;

        var str = $.toJSON(request);

        window.cefQuery({
            request : str,
            onSuccess : function(response) {
                var result = $.parseJSON(response);
 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

随风九天

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值