JSON.parse解析特殊字符报错的解决办法
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JSON.parse解析特殊字符报错的解决办法相关的知识,希望对你有一定的参考价值。
参考技术A let str = JSON.stringify(arr)str = encodeURIComponent(str)
<-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.->
arr = JSON.parse(decodeURIComponent(str)) // 再还原
《=====================================================》
JSON.stringify() : 用于将 javascript 值转换为 JSON 字符串;
JSON.parse() :用于将一个 JSON 字符串转换为对象;
encodeURIComponent() :可把字符串作为 URI 组件进行编码,该方法不会对 ASCII 字母和数字进行编码,也不会对这些 ASCII 标点符号进行编码: - _ . ! ~ * ' ( ) ,其他字符(比如 :;/?:@&=+$,# 这些用于分隔 URI 组件的标点符号),都是由一个或多个十六进制的转义序列替换的(链接:https://www.runoob.com/js/javascript-json-stringify.html);
decodeURIComponent() :可对 encodeURIComponent() 函数编码的 URI 进行解码(链接:https://www.runoob.com/jsref/jsref-decodeuricomponent.html)。
以上是关于JSON.parse解析特殊字符报错的解决办法的主要内容,如果未能解决你的问题,请参考以下文章
JSON.parse()解析该json字符串,特殊字符串引起报错