【ES6】promise对象

promise对象的作用:

        防止出现回调地狱,提高代码的可读性,像同步操作那样去执行异步操作

回调地狱:

        是指回调函数中有回调函数。

promise的使用

    let pro = new Promise( (resolve, reject) => {
        if(Math.random() > 0.5){
            resolve("i'm resolve");
        }else{
            reject("i'm reject");
        }
    })
    pro.then( (res) =>{
        console.log(res);
    } ).catch( (err) =>{
        console.log(err);
    } )

案例

<script src="https://cdn.bootcdn.net/ajax/libs/jquery/3.6.0/jquery.min.js"></script>
<script>
    // 1. 请求登录
    function myLogin() {
        return new Promise((resolve, reject) => {
            $.ajax({
                type: 'get',
                url: 'json/login.json',
                success(res) {
                    resolve(res);
                },
                error(err) {
                    reject(res);
                }
            })
        })

    }
    // 2. 导演信息
    function director() {
        return new Promise((resolve, reject) => {
            $.ajax({
                type: 'get',
                url: 'json/director.json',
                success(res) {
                    resolve(res);
                },
                error(err) {
                    reject(res);
                }
            })
        })
    }
    // 3. 电影信息
    function film(data) {
        return new Promise((resolve, reject) => {
            $.ajax({
                type: 'get',
                url: 'json/' + data + '.json',
                success(res) {
                    resolve(res);
                },
                error(err) {
                    reject(err);
                }
            })
        })
    }

    myLogin().then(res => {
        return director();
    }).then(res => {
        return film(2);
    }).then(res => {
        console.log(res);
    })
    .catch(err => {
        console.log(err);
    })
</script>

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值