回调是什么意思,什么是回调函数

回调函数应该是经常使用到的,以下代码就是一个回调函数的例子:ajax(url, () => { // 处理逻辑})但是回调函数有一个致命的弱点,就是容易写出回调

回调函数应该经常使用。以下代码是回调函数的示例。

ajax(url, ()={ //处理逻辑}) 然而回调函数有一个致命的弱点:很容易写出回调地狱。假设您在多个请求之间存在依赖关系,您可以编写以下代码:

ajax(url, ()={ //处理逻辑ajax(url1, ()={ //处理逻辑ajax(url2, ()={ //处理逻辑}) })}) df93ab8fcde8490daa7644f3626b0881~noop.image?_iz=58558&from=article.pc_detail&lk3s=953192f4&x-expires=1717892453&x-signature=ECLg7qG7n%2F2bIZINxwdLF3vPJzw%3D

当然,上面的代码似乎不利于阅读或维护,但您可能想知道解决这个问题是否不是那么简单。

4e1c9705579d4c53aad276dcf9a4615e~noop.image?_iz=58558&from=article.pc_detail&lk3s=953192f4&x-expires=1717892453&x-signature=OWywopDJ5LSB9uUsiSPqFUBNQCw%3D

虽然上面的代码看起来更容易阅读,但它仍然没有解决根本问题。

回调地狱的根本问题是:

嵌套函数具有绑定,这意味着所做的更改会影响整个函数体。当然,回调函数也有缺点,例如使错误处理变得困难。 Try catch 不允许直接返回错误。

解决:

1. 发电机

2. 承诺

3. 异步和等待

原创文章,作者:小条,如若转载,请注明出处:https://www.sudun.com/ask/87180.html

(0)
小条's avatar小条
上一篇 2024年6月2日 上午8:20
下一篇 2024年6月2日 上午8:21

相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注