0


js中json与map数据互相转换

1. 判断是否是合法的JSON字符串

/**
 * 判断是否是合法的Json字符串
 * @param str - 字符串
 */constisJsonStr=(str:string)=>{if(typeof str ==='string'){try{const obj =JSON.parse(str)if(typeof obj ==='object'&& obj){returntrue}else{returnfalse}}catch(e){returnfalse}}returnfalse}

2. JSON String 数据转 MAP

通过JSON.stringify将JSON转为String
再先执行第一步isJsonStr ,判断字符串是否为JSON字符串
再将JSON String 数据转 MAP

/**
 * JSON String 数据转 MAP
 * @param jsonStr - JSON String
 */constjsonStrToMap=(jsonStr:string)=>{const jsonObj =JSON.parse(jsonStr)const map =newMap()for(const k of Object.keys(jsonObj)){
    map.set(k, jsonObj[k])}return map
}

3. MAP 数据转 JSON String

MAP 数据转 JSON String
如果只想要json数据可直接return obj 即可

/**
 * MAP 数据转 JSON String
 * @param map - MAP对象
 */constmapToJsonStr=(map: Map<string,any>)=>{const newMap =cloneDeep(map)const obj:any={}
  newMap.forEach((v, k)=>(obj[k]= v))const JsonStr =JSON.stringify(obj)return JsonStr
}
标签: json javascript 前端

本文转载自: https://blog.csdn.net/jojo1001/article/details/128233090
版权归原作者 有点方阿 所有, 如有侵权,请联系我们删除。

“js中json与map数据互相转换”的评论:

还没有评论