牛骨文教育服务平台(让学习变的简单)
博文笔记

Fetch 与 Promise

创建时间:2017-01-12 投稿人: 浏览次数:4354

Fetch

javascript 异步请求
具体标准参考如下 点击这里
FetchAPI

基本用法(ES6 语法):

 fetch(url,option)
 .then((response) => {
     // do something
 });

其中

const option = {
    method: "POST",
    head: {
        Accept: "application/json",
        "Content-type": "application/json",
        Authorization: `Basic ${btoa(`${username}:${password}`)}`,
        },
    body: ...
}

Promise

一种JavaScript对象,用来异步运算。
语法:

new Promise( /* executor */  (resolve, reject) => {
    //
});

当executor 会立马调用,在Promise 构造函数返回创建的对象前。 resolve 和 reject 函数将会被调用。 通常executor用来初始化一些异步工作。

Promise 有三个状态

  • pending : 初始化状态,没有完成或拒绝
  • fulfilled: 操作成功完成
  • rejected: 操作失败

一个pending 的promise 可以fulfilled一个值,或者rejected带有一个error。当这些都发生后,then 方法会被调用。

这里写图片描述

  Promise().then(() => {
     // first
     return Promise.reject();  // second then will not be called.

  }).then( () => {
     // second

  })
声明:该文观点仅代表作者本人,牛骨文系教育信息发布平台,牛骨文仅提供信息存储空间服务。