Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
G8866
unidocs-zh
提交
eb1a2485
unidocs-zh
项目概览
G8866
/
unidocs-zh
与 Fork 源项目一致
Fork自
DCloud / unidocs-zh
通知
1
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
unidocs-zh
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
eb1a2485
编写于
8月 15, 2023
作者:
DCloud_Heavensoft
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
Update data-type.md
上级
f945c747
变更
1
隐藏空白更改
内联
并排
Showing
1 changed file
with
6 addition
and
17 deletion
+6
-17
docs/uts/data-type.md
docs/uts/data-type.md
+6
-17
未找到文件。
docs/uts/data-type.md
浏览文件 @
eb1a2485
...
...
@@ -519,23 +519,21 @@ let a3: NSMutableArray = NSMutableArray(array= a)
更多Array的API,
[
详见
](
https://uniapp.dcloud.net.cn/uts/buildin-object-api/array.html
)
###
对象(Object)@object
###
JSON@json
对象在 js 中是用起来很自由,使用字面量即可直接定义对象
。
json 在 js 中用起来很自由,但在强类型语言中,不管kotlin、swift、dart...,都没有这么灵活
。
但在强类型语言中,不管kotlin、swift...,都没有这么灵活的对象初始化方式。
对象里的每个属性,都需要定义类型,才能安全读写。
json对象里的每个属性,都需要定义类型,才能安全读写。
JSON 是 js 对象的一种表示方法,在 js 中可以直接用作对象表达式来初始化一个对象,而其他大多数语言都要求把json对象转为class、interface或type。
uts 当然也可以把 json 转 interface/type。有很多转换工具,不管是在线网页还是ide插件。
同时 uts 也提供了内置的 UTSJSONObject
类型
,它尽可能的为开发者提供接近js的灵活性。
同时 uts 也提供了内置的 UTSJSONObject,它尽可能的为开发者提供接近js的灵活性。
#### 对象和数组
首先,我们需要区分
UTSJSONObject 和 UTSJSONObject 构
成的数组。
首先,我们需要区分
JSON对象和由JSON对象组
成的数组。
这是一个 UTSJSONObject 对象。jo 对象有2个属性,x和y,都是数字类型
```
ts
...
...
@@ -595,7 +593,7 @@ let jo2 = {
如果属性名包括
`-`
,则必须两侧加引号包围。尽管在 kotlin 中属性名称包含
`$`
和
`_`
等也需要转义,但是 UTS 中是无需特殊处理的,编译器会自动转换。
对于纯字面量,jo 后面的
`:UTSJSONObject`
可以省略,这些类型比较简单。包括下面的多层嵌套,类型也不会推导出错。
对于纯字面量,jo 后面的
`:UTSJSONObject`
可以省略,这些类型比较简单
,可以自动推导类型
。包括下面的多层嵌套,类型也不会推导出错。
```
ts
let
rect
=
{
...
...
@@ -609,15 +607,6 @@ let rect = {
console
.
log
(
rect
)
```
<!--
如果定义时赋值不是纯字面量,包含一些变量,就需要使用
`as`
关键字来声明类型。
```
ts
let
i
=
1
let
jo
=
{
x
:
i
as
number
,
// 需显式声明属性x的类型为number,不会自动推导类型
y
:
2
}
```
对于复杂的json,通常会给它配套定义一个type,来描述这个json的内部数据类型。
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录