📜  JavaScript 中的异步/等待函数

📅  最后修改于: 2022-05-13 01:56:53.836000             🧑  作者: Mango

JavaScript 中的异步/等待函数

我们都知道 Javascript 是同步的,这意味着它有一个事件循环,允许您排队一个不会发生的操作,直到在排队操作的代码完成执行后的某个时间循环可用。但是我们的程序中有很多功能使我们的代码异步。其中之一是 Async/Await 功能。

Async/Await 是我们作为语言支持获得的 Promise 的扩展。您可以参考 Javascript 中的 Promises 以了解更多信息。

异步:
它只是允许我们编写基于 Promise 的代码,就好像它是同步的一样,它会检查我们是否没有破坏执行线程。它通过事件循环异步操作。 Async函数将始终返回一个值。它确保返回一个承诺,如果没有返回,则 javascript 会自动将其包装在一个用其值解析的承诺中。

例子:

const getData = async() => {
    var data = "Hello World";
    return data;
}
  
getData().then(data => console.log(data));

输出:

Hello World


等待:
Await函数用于等待 promise。它只能在异步块中使用。它使代码等到 promise 返回结果。它只会让异步块等待。

const getData = async() => {
    var y = await "Hello World";
    console.log(y);
}
  
console.log(1);
getData();
console.log(2);

输出:

1
2
Hello World

请注意,控制台在“Hello World”之前打印 2。这是由于使用了 await 关键字。

支持的浏览器: Async/Await 函数支持的浏览器如下:

  • 谷歌浏览器 55 及以上
  • 火狐 52 及以上
  • 苹果 Safari 10.1 及更高版本
  • Opera 42 及以上
  • 边缘 14 及以上

JavaScript 以网页开发而闻名,但它也用于各种非浏览器环境。您可以按照这个 JavaScript 教程和 JavaScript 示例从头开始学习 JavaScript。