【HarmonyOS NEXT】鸿蒙解析JSON字符串 ArkTSUtils.ASON

为支持将JSON字符串解析成共享数据,ArkTS语言基础库新增了ASON工具。ASON支持开发者解析JSON字符串,并生成共享数据进行跨并发域传输,同时ASON也支持将共享数据转换成JSON字符串。

ISendable

type ISendable = lang.ISendable

ISendable是所有Sendable类型(除null和undefined)的父类型。自身没有任何必须的方法和属性。

元服务API: 从API version 12开始,该接口支持在元服务中使用。

系统能力: SystemCapability.Utils.Lang

类型 说明
lang.ISendable 所有Sendable类型的父类型。

parse

parse(text: string): ISendable | null

用于解析JSON字符串生成ISendable数据或null。

元服务API: 从API version 12开始,该接口支持在元服务中使用。

系统能力: SystemCapability.Utils.Lang

参数:

参数名 类型 必填 说明
text string 有效的JSON字符串。

返回值:

类型 说明
ISendable | null 返回ISendable数据或null。当入参是null时,返回null。

示例:

TypeScript 复制代码
import { lang } from '@kit.ArkTS';

type ISendable = lang.ISendable;
let jsonText = '{"name": "John", "age": 30, "city": "ChongQing"}';
let obj = ArkTSUtils.ASON.parse(jsonText) as ISendable;
console.info((obj as object)?.["name"]);
// 期望输出: 'John'
console.info((obj as object)?.["age"]);
// 期望输出: 30
console.info((obj as object)?.["city"]);
// 期望输出: 'ChongQing'

stringify

stringify(value: ISendable | null | undefined): string

该方法将ISendable数据转换为JSON字符串。

元服务API: 从API version 12开始,该接口支持在元服务中使用。

系统能力: SystemCapability.Utils.Lang

参数:

参数名 类型 必填 说明
value ISendable | null | undefined ISendable数据。

返回值:

类型 说明
string 转换后的JSON字符串。

示例:

TypeScript 复制代码
import { collections } from '@kit.ArkTS';

let arr = new collections.Array(1, 2, 3);
let str = ArkTSUtils.ASON.stringify(arr);
console.info(str);
// 期望输出: '[1,2,3]'
相关推荐
万邦科技Lafite2 小时前
京东按图搜索京东商品(拍立淘) API (.jd.item_search_img)快速抓取数据
开发语言·前端·数据库·python·电商开放平台·京东开放平台
一只小透明啊啊啊啊4 小时前
Java Web 开发的核心组件:Servlet, JSP,Filter,Listener
java·前端·servlet
你的人类朋友5 小时前
设计模式有哪几类?
前端·后端·设计模式
切糕师学AI5 小时前
.NET 对象转Json的方式
json·.net
Yeats_Liao5 小时前
Go Web 编程快速入门 10 - 数据库集成与ORM:连接池、查询优化与事务管理
前端·数据库·后端·golang
爱笑的眼睛115 小时前
HarmonyOS Badge徽标组件:深入消息提示的实现与优化
华为·harmonyos
啃火龙果的兔子5 小时前
前端八股文react篇
前端·react.js·前端框架
打小就很皮...5 小时前
React 实现 i18next 中英文切换集成
前端·react.js·i18next
拉不动的猪6 小时前
函数组件和异步组件
前端·javascript·面试
淮北4946 小时前
html + css +js
开发语言·前端·javascript·css·html