首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

重学JavaScript Promise API

在这篇教程,我们将掌握如何在JavaScript创建并使用Promise。我们将了解Promise链式调用、错误处理以及最近添加到语言中的一些Promise静态方法。 什么Promise?...catch方法 我们还可以使用catch方法,它可以为我们处理错误。当一个PromisePromise链的任何地方rejected时,控制会跳转到最近的拒绝处理函数。...(error => console.log(error)); 注意,除了代码块的末尾添加错误处理函数之外,我还在第7行将res.json()拼错为res.jsn()。...与catch一样,该方法有助于防止代码重复,并且执行清理任务时非常有用,例如关闭数据库连接或从UI移除加载动画。...1”,因为数组的第一个Promise会被立即拒绝,并且拒绝会被我们的catch块捕获。

13420
您找到你想要的搜索结果了吗?
是的
没有找到

译|调整JavaScript抽象的迭代方案

项目中编写该模块或复用该模块; 调整模块。随时调整模块; 移除模块。 我先前的文章,重心放在了第一点上。而在这篇文章,我将把重点放在第二点上。 模块更改是我经常碰到的一个难题。..._handleError) .then( res => res.json()) .catch( error => { alert('So sad....我们开始讨论方法之前,我们先来总结一下什么是不变的,什么是需要修改的: 更改:公共 API.get() 方法 需要修改 axios() 的 window.fetch()调用;需要再次返回一个 Promise...通过 Fetch API 并通过链式调用 .then( res => res.json()) 语句来解析响应的数据。使用 Axios,服务器响应是 data 属性,我们不需要解析它。...我们可以通过它来串起来,如果它的值是 OK,那么一切将没什么问题(附注: Fetch API OK 为 true 与 Axios 的 statusText 为 OK 是不一样的。

79890

Ajax 之战:XMLHttpRequest 与 Fetch API

下面的 Promise 链函数与上面的 XMLHttpRequest 例子相同: fetch("/service", { method: "GET" }) .then((res) => res.json...(res.status); // HTTP status console.log(res.url); const json = await res.json(); // parses body as...缓存控制 XMLHttpRequest 管理缓存具有挑战性,你可能会发现有必要附加一个随机查询字符串值来绕过浏览器缓存,Fetch 方法第二个参数 init 对象内置了对缓存的支持: const...) => res.json()) .then((json) => console.log(json)) .catch((error) => console.error("Error:", error...catch() 块,这似乎是合乎逻辑的,但事实并非如此:Promise 成功地解决了这些响应,只有当网络没有响应或请求被中断时,才会发生拒绝。

2.1K20

ES6Promise和Fetch

但是如果回调函数仍然嵌套有回调函数,代码就会变得越来越不可维护。这篇文章介绍ES6如何通过Promise解决这个问题,并介绍了相关的Fetch方法。...Promise对象上可以调用then()方法,它也接受两个方法,一个是resolve,一个是reject。then()方法返回的还是一个Promise对象,因此支持链式调用。...ES6,提供了fetch方法简化了这一操作。除此以外,fetch方法返回的是一个Promise对象,因此,可以链式发起异步请求。而服务端的返回值则通过response对象传递。..., y:3}) }) }).then(function(res){ return res.json(); }).then(function(res){ console.log...总结 这篇文章主要讲述了ES6Promise对象和Fetch方法,上面的代码,无需Babel就可以新版本Chrome浏览器下直接运行,建议想要熟悉的朋友们敲一遍代码,执行一遍以加深理解。

1.5K40

JavaScript学习笔记029-fetch0公共接口调用

Author:Mr.柳上原 付出不亚于任何的努力 愿我们所有的努力,都不会被生活辜负 不忘初心,方得始终 好久没更新笔记了 成功找到前端工作 前期异常忙碌 不过, 成长也是异常的快速 了解了很多在培训不会提及到的各种企业开发知识...-- 网页主干:可视化区域 --> /* get post 请求都不安全 get方式: 数据url地址里 post方式: Request Payload里可以查询到发送的数据信息...user=${user.value}&pwd=${pwd.value}` fetch("http://localhost:3001") .then(res => res.json()) .then(data...=> res.json()) .then(result => { console.log(result); }) } // async / await btn.onclick = () => { const...application/json", "Content-Type": "application-json" }, body: JSON.stringify(data) }); const result = await res.json

53620
领券