json字符串与自定义class结构的转换

网络请求返回的数据为json格式的字符串或json对象,需要将其转换成业务中具体的class对象,该怎么实现

HarmonyOS
2024-04-28 00:14:37
浏览
收藏 0
回答 1
待解决
回答 1
按赞同
/
按时间
makeer

使用object可以定义非简单类型(string, boolean, number)的任何结构类型,再通过JSON和as与class类进行互转。demo如下:

class TestPjo { 
name: string = ''; 
age: number = 0; 
} 
 
static test() { 
//1、object > json字符串 
let obj_1: object = new Object(); 
obj_1['name'] = 'aaa'; 
obj_1['age'] = 20; 
let pjo_1 = obj_1 as TestPjo; 
console.info('...test_2 pjo_1:' + JSON.stringify(pjo_1)); 
//2、json字符串 > object > class 
let str: string = '{"name": "aaa", "age": 20}'; 
let tmp: object = JSON.parse(str); 
let pjo_2 = tmp as TestPjo; 
console.info('...test_2 pjo_2:' + JSON.stringify(pjo_2)); 
//3、class > object > json字符串 
let pjo_3 = new TestPjo(); 
pjo_3.name = 'aaa'; 
pjo_3.age = 20; 
let obj_3: object = pjo_3; 
console.info('...test_2 obj_3:' + JSON.stringify(obj_3)); 
}
分享
微博
QQ
微信
回复
2024-04-28 21:27:21
相关问题
eTS中如何进行时间字符串转换
2797浏览 • 1回复 待解决
NativeTS互传自定义obj class
535浏览 • 1回复 待解决
如何解析JSON字符串
425浏览 • 1回复 待解决
嵌套JSON字符串解析问题
793浏览 • 1回复 待解决
如何实现Map转JSON字符串
625浏览 • 1回复 待解决
json 如何转换自定义业务类对象
452浏览 • 1回复 待解决
如何将文件转换字符串
19浏览 • 1回复 待解决
如何生成UUID字符串
950浏览 • 1回复 待解决
emoji字符串无法进行截取
517浏览 • 1回复 待解决
如何实现字符串编解码
1099浏览 • 1回复 待解决