1. 判断是否是合法的JSON字符串
/**
* 判断是否是合法的Json字符串
* @param str - 字符串
*/
const isJsonStr = (str: string) => {
if (typeof str === 'string') {
try {
const obj = JSON.parse(str)
if (typeof obj === 'object' && obj) {
return true
} else {
return false
}
} catch (e) {
return false
}
}
return false
}
2. JSON String 数据转 MAP
通过JSON.stringify将JSON转为String
再先执行第一步isJsonStr ,判断字符串是否为JSON字符串
再将JSON String 数据转 MAP
/**
* JSON String 数据转 MAP
* @param jsonStr - JSON String
*/
const jsonStrToMap = (jsonStr: string) => {
const jsonObj = JSON.parse(jsonStr)
const map = new Map()
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对象
*/
const mapToJsonStr = (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
}
版权声明:本文为jojo1001原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。