API 11中,使用JSON.stringify解析HashMap输出错误:
test() {
const extra : HashMap<string,Object> = new HashMap();
extra.set("name","JayXu");
let dataStr = JSON.stringify(extra)
///此时dataStr为空。
}
解决方案:封装一个map转对象方法,然后调用
import HashMap from '@ohos.util.HashMap';
export class MapUtils {
/**
* 将HashMap转成JsonString
* @param map
* @returns
*/
static map2Json(map:HashMap<string, object>): string {
let jsonObject: Record<string, Object> = {};
map.forEach((value, key) => {
if(key != undefined && value != undefined){
jsonObject[key] = value;
}
})
return JSON.stringify(jsonObject);
}
}