js URLEncode函数
完美的js URLEncode函数
当需要通过查询字符串传值给服务器时需要对get参数进行encode。
- escape()函数,不会encode
@*/+
(不推荐使用) - encodeURI()函数,不会encode
~!@#$&*()=:/,;?+'
(不推荐使用) - encodeURIComponent()函数,不会encode
~!*()
这个函数是最常用的
我们需要对encodeURIComponent函数,最一点修改:
function urlencode (str) { str = (str + '').toString(); return encodeURIComponent(str).replace(/!/g, '%21').replace(/'/g, '%27').replace(/\(/g, '%28'). replace(/\)/g, '%29').replace(/\*/g, '%2A').replace(/%20/g, '+');
}
PS:例如微信H5支付中要求对回调页面的参数redirect_url
参数进行 URLEncode。
前端路由采用了hash模式,由于我采用的是encodeURI,导致 #
未 encode而引起#后面内容的丢失,采用encodeURIComponent就好了
js URLEncode函数相关推荐
- js urlencode 20 php,js实现php函数urlencode
本文介绍了php函数urlencode的js实现方法并比较js和php各编码函数的区别. 通常form表单的enctype类型为 application/x-www-form-urlencoded, ...
- js自定义函数及参数问题
js自定义函数的过程中,往往我们希望指定一些参数的默认值 很容易的会写出如下的js 方法 function test(a,b,c=1,d='id'){ return 1; } 但是定义完之后,浏览器会 ...
- 【转】JS回调函数--简单易懂有实例
JS回调函数--简单易懂有实例 初学js的时候,被回调函数搞得很晕,现在回过头来总结一下什么是回调函数. 我们先来看看回调的英文定义:A callback is a function that is ...
- url的三个js编码函数escape(),encodeURI(),encodeURIComponent()简介
转载地址:http://www.haorooms.com/post/js_escape_encodeURIComponent 引子 浏览器URl地址,上网一定会用到,但是浏览器地址有中文或者浏览器ur ...
- url的三个js编码函数escape(),encodeURI(),encodeURIComponent()简介【转】
引子 浏览器URl地址,上网一定会用到,但是浏览器地址有中文或者浏览器url参数操作的时候,经常会用到encodeURIComponent()和decodeURIComponent()以及encode ...
- prototype.js常用函数及其用法
prototype.js常用函数: 函数名 解释 举例 Element.toggle 交替隐藏或显示 Element.toggle(''div1'',''div2'') Element.h ...
- 调用c++_WebAssembly: 在C代码中调用JS的函数
0. 前提知识点 导出C中的函数给JS调用:主要是EMSCRIPTEN_KEEPALIVE这个Emscripten环境特有的宏. #include <stdio.h>#ifndef EM_ ...
- js中函数的参数为函数的情况即回调函数
js中函数的参数可以是数组对象也可以是函数,当参数为函数时我们叫做回调函数 //定义回调函数 function B() { console.log("函数B") setTimeou ...
- JS回调函数(callback)
在使用Jquery的时候,用到Callback(),回调函数的概念.而且很多. 比如: $.ajax({url:"test.json",type: "GET", ...
最新文章
- 四、MySql七个查询命令中哪些命令执行效率过慢
- CSS打造很棒的黑色背景下的导航菜单
- 图像梯度增强_使用梯度增强机在R中进行分类
- Zabbix3.0 安装Graphtree
- “睡服”面试官系列第四篇之字符串的扩展(建议收藏学习)
- [CF718C] Sasha and Array
- 腾讯接入华为鸿蒙!QQ音乐与Harmony OS达成合作 推出听歌识曲万能卡片
- 第十六章——处理锁、阻塞和死锁(3)——使用SQLServer Profiler侦测死锁
- php header readfile,采用header定义为文件然后readfile下载
- Excel VBa 连接Oracle数据库
- Python数据分析入门教程(五):数据运算
- 白嫖 Moss 斯坦福文件查重
- BFM-总线功能模型
- 你同学都身价上亿了,你还在纠结早晨几点能起床
- 勤于奋国外LEAD联盟赚钱注意事项
- springboot静态资源的配置
- 基于Reworld、Roblox的团队协作
- 大规模网络攻击致美国网站集体宕机 “维基解密”吁支持者停止复仇
- trunk vlan pvid 学习实验整理 1
- Flutter glUtilsParamSize: unknow param 0x00008741 错误
热门文章
- java合并单元格边框不完整,java poi 合并单元格后边框问题
- 5. SAP S/4 运维基础知识(Basic Knowledge) - SAP S/4 Basis Learning
- 自动识别查找特定的串口号 比如设备管理器中Modem属性里的串口 按这个方法可以获取设备管理器任意信息。C++
- 关于flex布局中,父元素高度auto,由一子元素撑开,另一子元素自适应高度问题
- border-image
- SVN拉取、提交文件
- day23面向对象第一篇
- 基于WPS开放平台 WPS文件转PDF开发指南
- android仿网易云音乐引导页、仿书旗小说Flutter版、ViewPager切换、爆炸菜单、风扇叶片效果等源码...
- 【更新】CVE-2020-0796:微软紧急发布SMBv3协议“蠕虫级”漏洞补丁通告