⽉⼩泪的TypeScript学习笔记(⼆)——TS使⽤asyncawait⽅
法
async/await⽅法在Typescript中的实现
async/await⽅法是ES6新增的⽅法,⾃然在Typescript也是可以⽤的。
加上async关键字的函数将会变成异步函数,意思就是xxx
给出⼀个实例:
async function hello(): Promise<string> {
return "hello1";
}
hello().then(value => {
console.log(value);
}).catch(err => {
<(err);
});
console.log('hello2');
这段代码跑出来的结果将会是:
hello2
hello1
上述代码可以看出async函数返回的是⼀个Promise对象,使⽤then⽅法添加回调函数然后可以输出值。但代码不是顺序执⾏的,⽽是先⾛的“hello2”然后再⾛“hello1”,原因是then⽅法这个回调函数需要TS进⼊相应事件后才会被执⾏,所以“hello2”会提前被输出出来。
await和async使用方法⽽await关键字则需要和async关键字⼀起使⽤才能发挥作⽤,⽐如在⼀个异步函数体内,我们加⼊await关键字进⾏代码改修:
async function hello(): Promise<string> {
return "hello1";
}
async function main(): Promise<void> {
try {
const value = await hello();
console.log(value);
} catch (err) {
<(err);
}
console.log('hello2');
}
main();
输出的结果将会变成如下形式:
hello1
hello2
await意思就是等待,异步函数体内等待await之前代码⾛完后再⾛后⾯的代码。
注意代码⾥改修的时候加⼊的try-catch语句,这是因为await命令后的Promise对象,运⾏会有rejected的情况出现,所以把await命令放在try-catch中。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论