解决微信小程序报错:“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 ) );
相关推荐
米丘18 分钟前
React 19.x 的 lazy 与 Suspense
前端·javascript·react.js
如果超人不会飞23 分钟前
TinyVue Grid 表格 fetchData 完全指南:从入门到精通
前端
kyriewen34 分钟前
手写虚拟DOM后,我反问面试官:key为什么不能用index?
前端·react.js·面试
Doris_20231 小时前
说一说ESLint+Prettier生效的原理
前端·设计模式·架构
ZC跨境爬虫1 小时前
跟着 MDN 学CSS day_21:(图像溢出控制与表单元素样式定制)
前端·javascript·css·ui·交互
卷帘依旧1 小时前
微前端解决方案-qiankun
前端
moshuying1 小时前
你做的,比汇报出来的多得多
前端
shuye2161 小时前
google chrome 离线下载地址
前端·chrome
yqcoder1 小时前
闭包是什么?优缺点、怎么防内存泄漏?
前端·http
lichenyang4531 小时前
鸿蒙 ArkUI 组件基础复盘:从两个 UI 卡片回到 ComponentV2、状态管理和组件分层
前端