评论

navigator组件 url传参,如果参数是[object,object] 并且object内含有特殊字符,会被截掉

navigator组件传参问题

navigator组件 url穿参,如果参数是[object,object] 并且object内含有特殊字符,会被截掉


解决办法

         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)。

最后一次编辑于  2022-07-28  
点赞 1
收藏
评论

1 个评论

登录 后发表内容