Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
DCloud
unidocs-zh
提交
a31cc8b8
unidocs-zh
项目概览
DCloud
/
unidocs-zh
通知
3217
Star
106
Fork
816
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
95
列表
看板
标记
里程碑
合并请求
70
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
unidocs-zh
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
95
Issue
95
列表
看板
标记
里程碑
合并请求
70
合并请求
70
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
提交
a31cc8b8
编写于
10月 18, 2023
作者:
Q
qiang
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
docs: 更新 uts 异步函数
上级
b6a790b2
变更
1
隐藏空白更改
内联
并排
Showing
1 changed file
with
26 addition
and
2 deletion
+26
-2
docs/uts/function.md
docs/uts/function.md
+26
-2
未找到文件。
docs/uts/function.md
浏览文件 @
a31cc8b8
...
...
@@ -95,8 +95,32 @@ function add(x: string, y: string): void {
在 HBuilderX 3.93 以下的版本或者 iOS 平台,异步函数返回的不是
[
Promise
](
./buildin-object-api/promise.md
)
对象,请分别参考:
[
安卓 异步函数
](
../plugin/uts-for-android.md#_6-11-synchronized-lock-等线程同步概念-在uts里怎么写
)
、
[
iOS 异步函数
](
../plugin/uts-for-ios.md#_5-1-13-异步方法
)
。
```
ts
async
function
test
():
Promise
<
string
>
{
return
'
test
'
async
function
foo
():
Promise
<
void
>
{
// ...
}
foo
().
then
(
function
()
{
console
.
log
(
'
done
'
)
})
```
async 函数可能包含 0 个或者多个
[
await
](
./operator.md#await
)
[
await
]
(./operator.md#await) 表达式会暂停整个 async 函数的执行进程并出让其控制权,只有当其等待的基于 promise 的异步操作被兑现或被拒绝之后才会恢复进程。promise 的解决值会被当作该 await 表达式的返回值。使用 async / await 关键字就可以在异步代码中使用普通的 try / catch 代码块。
```
ts
async
function
foo
():
Promise
<
void
>
{
try
{
await
aPromise
}
catch
(
error
)
{
console
.
log
(
error
)
}
}
```
async 函数一定会返回一个 promise 对象。如果一个 async 函数的返回值看起来不是 promise,那么它将会被隐式地包装在一个 promise 中。
```
ts
async
function
foo
():
Promise
<
number
>
{
return
1
}
```
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录