理解Promise函数中的resolve和reject

看了promise的用法,一直不明白里面的resolve和reject的用法;

运行了这两段代码之后彻底理解了promise的用法;

var p = new Promise(function (resolve, reject) {
            var timer = setTimeout(function () {
                console.log('执行操作1');
                resolve('这是数据1');
            }, 1000);
        });
        p.then(function (data) {
            console.log(data);
            console.log('这是成功操作');
        });

  这里段代码放在chrome浏览器里执行,出现的第一行是Promise{<pending>}

  然后再出现

   执行操作1
        这是数据1
        这是成功操作

  然后再次输入p 按回车执行

   打印出来p是这样

Promise{<resolved>}
然后点开看 可以看到控制台提示promiseStatus :resolved  说明promise的状态已经成为了resolved

如果去掉异步里面的resolve函数调用, 则再次打印出来的状态仍然是pending; 说明resolve函数是可以改变promise状态的一个函数;

以上理解来自于博客:https://blog.csdn.net/weixin_41888813/article/details/82882375#commentBox 

原文地址:https://www.cnblogs.com/qqfontofweb/p/9843622.html