解决微信小程序报错:“SyntaxError:Unexpected end of JSON input”

1. 报错原因:

如果对象的参数或数组的元素中遇到地址,地址中包括?、&这些特殊符号时,对象/数组先要通过JSON.stringify转化为字符串再通过encodeURIComponent编码;接收时,先通过decodeURIComponent解码再通过JSON.parse转换为JSON格式的对象/数组。
2. 正确的代码如下:

javascript 复制代码
// 传参时

let newObj = encodeURIComponent( JSON.stringify( obj ) );


// 接收参数时

let { newObj } = options;

let data = JSON.parse( decodeURIComponent( newObj ) );
相关推荐
_果果然7 小时前
这 7 个免费 Lottie 动画网站,帮你省下一个设计师的工资
前端
QT.qtqtqtqtqt7 小时前
uni-app小程序前端开发笔记(更新中)
前端·笔记·小程序·uni-app
Trouvaille ~7 小时前
【Linux】应用层协议设计实战(二):Jsoncpp序列化与完整实现
linux·运维·服务器·网络·c++·json·应用层
Aliex_git8 小时前
跨域请求笔记
前端·网络·笔记·学习
37方寸8 小时前
前端基础知识(Node.js)
前端·node.js
powerfulhell8 小时前
寒假python作业5
java·前端·python
木子啊9 小时前
前端组件化:模板继承拯救发际线
前端
三十_A9 小时前
零基础通过 Vue 3 实现前端视频录制 —— 从原理到实战
前端·vue.js·音视频
前端小菜袅9 小时前
PC端原样显示移动端页面方案
开发语言·前端·javascript·postcss·px-to-viewport·移动端适配pc端
We་ct9 小时前
LeetCode 228. 汇总区间:解题思路+代码详解
前端·算法·leetcode·typescript