关于javascript:js对url含有特殊字符的转码处理

问题

url 上传有特殊字符,导致接口拼接传参会报400的谬误

解决办法

办法一:正则替换

var str = str.replace(/\+/g, "%2B"); //"+" 本义  
var str = str.replace(/\&/g, "%26"); //"&" 本义
var str = str.replace(/\#/g, "%23"); //"#" 本义

办法二:encodeURIComponent(str) 办法 (举荐)

let str = 'NBA+';
str = encodeURIComponent(str);
console.log(str) // NBA%2B

当然,能够两者联合,再你不晓得该特殊字符的本义的时候,能够应用 encodeURIComponent() 来解码失去,就像你不晓得键盘某键的keyCode一样

评论

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

这个站点使用 Akismet 来减少垃圾评论。了解你的评论数据如何被处理