首页 > 试题广场 >

在ECMAScript6 中,下面哪个不属于Promise的

[单选题]
在ECMAScript6 中,下面哪个不属于Promise的状态()
  • Pending
  • Rejected
  • Resolved
  • Pause
推荐
Promise对象只有三种状态。
异步操作“未完成”(pending)
异步操作“已完成”(resolved,又称fulfilled)
异步操作“失败”(rejected)
这三种的状态的变化途径只有两种。

异步操作从“未完成”到“已完成”
异步操作从“未完成”到“失败”。
这种变化只能发生一次,一旦当前状态变为“已完成”或“失败”,就意味着不会再有新的状态变化了。因此,Promise对象的最终结果只有两种。

异步操作成功,Promise对象传回一个值,状态变为resolved。
异步操作失败,Promise对象抛出一个错误,状态变为rejected。

参考链接为:http://javascript.ruanyifeng.com/advanced/promise.html#toc9
编辑于 2016-11-01 13:42:36 回复(3)
promise模式在任何时刻都处于以下三种状态之一:未完成(unfulfilled)、已完成(resolved)和拒绝(rejected)。
发表于 2016-07-26 15:42:48 回复(0)
开篇首先设想一个日常开发常常会遇到的需求:在多个接口异步请求数据,然后利用这些数据来进行一系列的操作。一般会这样去写:

$.ajax({
    url: '......',
    success: function (data) {
        $.ajax({
            // 要在第一个请求成功后才可以执行下一步
            url: '......',
            success: function (data) {
                 // ......
            }
        });
    }
});
这样的写法的原理是,当执行一些异步操作时,我们需要知道操作是否已经完成,所有当执行完成的时候会返回一个回调函数,表示操作已经完成。

使用回调函数的形式理解起来并不困难,但是实际的应用当中会有以下的缺点:

在需要多个操作的时候,会导致多个回调函数嵌套,导致代码不够直观,就是常说的 Callback Hell。
如果几个异步操作之间并没有前后顺序之分(例如不需要前一个请求的结果作为后一个请求的参数)时,同样需要等待上一个操作完成再实行下一个操作。
为了解决上述的问题,Promise 对象应运而生,在 EMCAScript 2015 当中已经成为标准。

///////////////////////////////////////////////////////////////////////////

什么是 Promise

首先来看一段使用了 Promise 对象的代码。

function helloWorld (ready) {
    return new Promise(function (resolve, reject) {
        if (ready) {
            resolve("Hello World!");
        } else {
            reject("Good bye!");
        }
    });
}

helloWorld(true).then(function (message) {
    alert(message);
}, function (error) {
    alert(error);
});


///////////////////////////////////////////////////////////////////////////

Promise 对象有三种状态:
①Fulfilled 可以理解为成功的状态(单词翻译为实现的)
②Rejected 可以理解为失败的状态(单词翻译为被拒绝的)
③Pending 既不是 Fulfilld 也不是 Rejected 的状态,可以理解为 Promise 对象实例创建时候的初始状态 (
发表于 2017-03-24 23:26:00 回复(1)
Promise中没有中转状态,要么完成,要么拒绝,要么完成进行中(未完成状态),不会中途停止。
发表于 2016-08-02 09:00:14 回复(0)
未完成(unfulfilled),完成(fulfilled)和拒绝(rejected)
发表于 2016-08-03 11:18:12 回复(0)
Promise对象只有三种状态。
异步操作“未完成”(pending)
异步操作“已完成”(resolved,又称fulfilled)
异步操作“失败”(rejected)
发表于 2020-06-08 16:27:27 回复(0)
Promise对象只有三种状态。 异步操作“未完成”(pending) 异步操作“已完成”(resolved,又称fulfilled) 异步操作“失败”(rejected) 这三种的状态的变化途径只有两种。 异步操作从“未完成”到“已完成” 异步操作从“未完成”到“失败”。 这种变化只能发生一次,一旦当前状态变为“已完成”或“失败”,就意味着不会再有新的状态变化了。因此,Promise对象的最终结果只有两种。 异步操作成功,Promise对象传回一个值,状态变为resolved。 异步操作失败,Promise对象抛出一个错误,状态变为rejected。 参考链接为:http://javascript.ruanyifeng.com/advanced/promise.html#toc9
发表于 2019-07-21 11:26:17 回复(0)
D
发表于 2019-05-08 21:46:49 回复(0)
只有三种
未完成(unfulfilled)、已完成(resolved)和拒绝(rejected)
发表于 2019-05-06 20:37:22 回复(0)
Promise对象只有三种状态。 异步操作“未完成”(pending) 异步操作“已完成”(resolved,又称fulfilled) 异步操作“失败”(rejected) 这三种的状态的变化途径只有两种。 异步操作从“未完成”到“已完成” 异步操作从“未完成”到“失败”。 这种变化只能发生一次,一旦当前状态变为“已完成”或“失败”,就意味着不会再有新的状态变化了。因此,Promise对象的最终结果只有两种。 异步操作成功,Promise对象传回一个值,状态变为resolved。 异步操作失败,Promise对象抛出一个错误,状态变为rejected。
发表于 2019-05-05 09:41:56 回复(0)
Promise对象只有三种状态。
异步操作“未完成”(pending)
异步操作“已完成”(resolved,又称fulfilled)
异步操作“失败”(rejected)
发表于 2019-03-10 14:02:22 回复(0)
yxw
发表于 2019-01-07 13:33:35 回复(0)
发表于 2017-03-11 10:38:33 回复(0)
d
发表于 2016-11-15 15:45:49 回复(0)
pending呢?
发表于 2016-09-25 15:36:46 回复(0)
D
发表于 2016-09-23 23:02:45 回复(0)
D
发表于 2016-09-21 09:07:15 回复(0)
D
发表于 2016-09-19 14:26:36 回复(0)
D
发表于 2016-09-01 21:54:18 回复(0)
promise是什么玩意?
发表于 2016-08-19 00:55:19 回复(1)
D promis中没有pause状态
发表于 2016-07-12 09:30:28 回复(1)