fetch 请求 api

fetch 请求 api

定义请求函数 calculate

function calculate() {
// 函数代码
}

请求 api

fetch("<https://open.exchangerate-api.com/v6/latest>")

需要注意的是:fetch 是一个异步操作

具体来讲,一般程序执行,是按照顺序依次从上往下执行,比如

console.log("第一次执行");
console.log("第二次执行");
console.log("第三次执行");

一步一步去执行

但是对于,fetch 操作

fetch 还正在执行了,就继续执行下一行来。

可以理解为在当前时间线上,重新开辟出了一条时间线去运行程序

fetch("<https://open.exchangerate-api.com/v6/latest>")
.then(console.log(res));

异步官方解释:JavaScript 会在请求发送后继续执行后续的代码,而不会等待请求完成

还需要注意一点的是

console 虽然也是一个js内置的函数

内置的函数,是不能直接作为 then 的参数的

错误写法:

function calculate() {
    fetch("<https://open.exchangerate-api.com/v6/latest>")
    .then(console.log(res));
}

官方解释:.then() 是 Promise 对象提供的方法,它期望接收一个函数作为参数。

正确写法

function daYin(res) {
    console.log(res);
}

function calculate() {
    fetch("<https://open.exchangerate-api.com/v6/latest>")
    .then(daYin(res)); // 不能这样写
		.then(daYin); // 应该这样写
}

calculate;

then 函数

then 函数会把上一行的输出,作为 then 函数自身的参数的输入

比如上面所举例的,fetch 请求之后的结果我们并没有给定一个变量去存储,而是直接在 then 里面写了 daYin(res) 传入 res 参数

官方:

hen 函数会在前一个操作(比如异步操作,如 fetch)完成后执行,将前一个操作的结果作为参数传递给 then 中的回调函数。

fetch 发出请求后,.then(daYin) 表示在请求完成后调用 daYin 函数

并将请求的结果传递给 daYin 函数。

不需要在**.then(daYin(res))** 中调用 daYin

因为 then 会自动将结果传递给回调函数。

记住: then 的参数始终期望传入一个一个回调函数。

  • 6
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值