跳至正文

微信小程序开发——json对象和字符串转换

// json对象
let jsonitem = {"key":"网站","name":"百度","url":"https://www.baidu.com"}

// json对象转json字符串
let jsonstr = JSON.stringify(jsonitem)

// 或增加URI组件编码
jsonstr = encodeURIComponent(jsonstr)

// json字符串转json对象
let jsonitem = JSON.parse(jsonstr)

// 或增加URI组件解码
let jsonitem = JSON.parse(decodeURIComponent(jsonstr))

注意事项

1、JSON操作时一定要保证是JSON格式的字符串,或对象。

2、如果对象中含有特殊字符时,会造成转换报错,并出现错误提示Unexpected end of JSON input
解决措施:在实际编码中,增加URI组件的编码和解码,代码示例如下

// json对象转json字符串
let jsonstr = JSON.stringify(jsonitem)

// 或增加URI组件编码
jsonstr = encodeURIComponent(jsonstr)

// 增加URI组件解码
let jsonitem = JSON.parse(decodeURIComponent(jsonstr))