【关键字】
HarmonyOS NEXT、Object.fromEntries
【问题背景】
之前基于API 9发过一篇文章【HarmonyOS】JSON格式化解析Map数据失败 - 开发者服务与平台部社区 - 3MS知识管理社区 (huawei.com),里面提到用Object.fromEntries可将Map数据转为JSON数据,但是在NEXT版本上却被校验住了:
这是为什么呢?
【问题分析及解决方案】
这是因为NEXT版本ArkTS加强了类型校验,需要做适配,可参照以下适配代码:
适配前:
let entries = new Map([
['name', '张三'],
['age', '33'],
]);
let obj = Object.fromEntries(entries);
适配后:
let entries = new Map([
['name', '张三'],
['age', '33'],
]);
let obj: Record<string, Object> = {};
entries.forEach((value, key) => {
if (key != undefined && key != null) {
obj[key] = value;
}
})
测试截图:
标签:Map,适配,NEXT,HarmonyOS,JSON,let,key From: https://www.cnblogs.com/mayism123/p/18054148