首页
题库
面试
求职
学习
竞赛
More+
所有博客
搜索面经/职位/试题/公司
搜索
我要招人
去企业版
登录 / 注册
首页
>
试题广场
>
在ECMAScript6 中,下面哪个不属于Promise的
[单选题]
在ECMAScript6 中,下面哪个不属于Promise的状态()
Pending
Rejected
Resolved
Pause
添加笔记
邀请回答
收藏(1694)
分享
21个回答
添加回答
74
推荐
菜鸟葫芦娃
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)
4
希望拥抱变化的西瓜
Promise中没有中转状态,要么完成,要么拒绝,要么完成进行中(未完成状态),不会中途停止。
发表于 2016-08-02 09:00:14
回复(0)
1
章鱼小丸子
未完成(unfulfilled),完成(fulfilled)和拒绝(rejected)
发表于 2016-08-03 11:18:12
回复(0)
14
张星星
promise模式在任何时刻都处于以下三种状态之一:未完成(unfulfilled)、已完成(resolved)和拒绝(rejected)。
发表于 2016-07-26 15:42:48
回复(0)
6
最讨厌晚上9点半,钉钉响起的声音
开篇首先设想一个日常开发常常会遇到的需求:在多个接口异步请求数据,然后利用这些数据来进行一系列的操作。一般会这样去写:
$.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)
0
宁宁子0908
Promise对象只有三种状态。
异步操作“未完成”(pending)
异步操作“已完成”(resolved,又称fulfilled)
异步操作“失败”(rejected)
发表于 2020-06-08 16:27:27
回复(0)
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)
0
柠小哀
D
发表于 2019-05-08 21:46:49
回复(0)
0
L刘刘刘
只有三种
未完成(unfulfilled)、已完成(resolved)和拒绝(rejected)
发表于 2019-05-06 20:37:22
回复(0)
0
色昏
Promise对象只有三种状态。 异步操作“未完成”(pending) 异步操作“已完成”(resolved,又称fulfilled) 异步操作“失败”(rejected) 这三种的状态的变化途径只有两种。 异步操作从“未完成”到“已完成” 异步操作从“未完成”到“失败”。 这种变化只能发生一次,一旦当前状态变为“已完成”或“失败”,就意味着不会再有新的状态变化了。因此,Promise对象的最终结果只有两种。 异步操作成功,Promise对象传回一个值,状态变为resolved。 异步操作失败,Promise对象抛出一个错误,状态变为rejected。
发表于 2019-05-05 09:41:56
回复(0)
0
盐萌怪
Promise对象只有三种状态。
异步操作“未完成”(pending)
异步操作“已完成”(resolved,又称fulfilled)
异步操作“失败”(rejected)
发表于 2019-03-10 14:02:22
回复(0)
0
悦澜~时光
yxw
发表于 2019-01-07 13:33:35
回复(0)
0
Arthur-Conan-Dog
发表于 2017-03-11 10:38:33
回复(0)
0
ME599
d
发表于 2016-11-15 15:45:49
回复(0)
0
阿炸
pending呢?
发表于 2016-09-25 15:36:46
回复(0)
0
牛客138064号
D
发表于 2016-09-23 23:02:45
回复(0)
0
留恋阳光
D
发表于 2016-09-21 09:07:15
回复(0)
0
牛客9697526号
D
发表于 2016-09-19 14:26:36
回复(0)
0
牛客8700389号
D
发表于 2016-09-01 21:54:18
回复(0)
0
牛客538378号
promise是什么玩意?
发表于 2016-08-19 00:55:19
回复(1)
0
sky1231
D promis中没有pause状态
发表于 2016-07-12 09:30:28
回复(1)
这道题你会答吗?花几分钟告诉大家答案吧!
提交观点
问题信息
Javascript
来自:
网易笔试练习卷(前端)
上传者:
小小
难度:
21条回答
1694收藏
12949浏览
热门推荐
相关试题
ajax原理、如何实现刷新数据及优点?
迅雷
Javascript
评论
(7)
Web 应用程序中常使用 MVC ...
软件工程
评论
(9)
下面关于promise的说法中,错...
Javascript
评论
(57)
来自
网易笔试练习卷(前端)
编程题 ,按照要求创建Java 应...
Java
评论
(1)
市场与销售的区别在哪里?
市场营销
评论
(1)
扫描二维码,关注牛客网
意见反馈
下载牛客APP,随时随地刷题