js 处理URL实用技巧

escape()、encodeURI()、encodeURIComponent()三种方法都能对一些影响URL完整性的特殊字符进行过滤。

但后两者是将字符串转换为UTF-8的方式来传输,解决了页面编码不一至导致的乱码问题。

例如:发送页与接受页的编码格式(Charset)不一致(假设发送页面是GB2312而接收页面编码是UTF-8),使用escape()转换传输中文字串就会出现乱码问题。 
以下是JS下对URL进行编/解码的各种方法:

escape方法:就对@*+/ A-Z 0-9 a-z这些字符不编码,其它非ASCII字符都会编码以%XX编码替换,解码使用unescape,escape 方法不能用来对“统一资源标识符”(URI) 进行编码。对其编码应使用 encodeURI 和encodeURIComponent 方法。encodeURI():对! @ # $ & * ( ) = : / ; ? + ‘ A-Z 0-9 a-z,其它的字符都会被编码,解码使用decodeURI();

如果想使更多的字会被编码,例:/..,请使用encodeURIComponent()方法,被此方法编码后,参数传递给服务器就是一种无效的字符,解码使用decodeURIComponent()

时间: 2025-01-05 20:27:53

js 处理URL实用技巧的相关文章

js处理url的技巧和归纳

var url = 'http://www.deikang.com/index.php?tel=15811296111&status=1&id=100'; var n = url.indexOf('?'); //alert(n); var m = url.substring(n + 1, url.length); //alert(m); var arr = m.split('&'); //alert(arr); for (var i in arr) { //alert(arr[i]

js的一些实用技巧

定时器函数参数 setTimeout和setInterval的第二个以后的参数可以传递给回调函数. 1 setTimeout(function(i, j){ 2 console.log(i); // 111 3 console.log(j); // 222 4 }, 1000, 111, 222); 5 6 setInterval(function(i, j){ 7 console.log(i); // 111 8 console.log(j); // 222 9 }, 1000, 111, 2

js基础进阶--编的实用技巧(一)

我的个人博客:http://www.xiaolongwu.cn 在平时的开发中,编码技巧很重要,会让你少写很多代码,起到事倍功半的效果. 下面总结几种简单的技巧,大家共同学习一下 1. 利用+.-./1,*1将字符串转换为整数型 这个方法试用于将字符串类型的数字转换为整数型,如果带字母就会返回NaN. var a = "1234", b = "leonWuv"; //我们想把a转换为1234的整数型,一般方法 console.log(typeof Number(a)

总结vue知识体系之实用技巧

vue 作为目前前端三大框架之一,对于前端开发者可以说是必备技能.那么怎么系统地学习和掌握 vue 呢?为此,我做了简单的知识体系体系总结,不足之处请各位大佬多多包涵和指正,如果喜欢的可以点个小赞!本文主要讲述一些vue开发中的实用技巧. 相关推荐 总结vue 知识体系之基础入门篇 总结几个vue-router的使用技巧 搭建一个vue-cli的移动端H5开发模板 监听组件的生命周期 比如有父组件 Parent 和子组件 Child,如果父组件监听到子组件挂载 mounted 就做一些逻辑处理,

js 的一些小技巧2

js 的一些小技巧 (1)传入一个表单控件(如input输入框,按钮)获取所在的form var getForm= function (formElement) { var $that=$(formElement).parent(); var max=6;//limit the depth var fieldsetElement=null;//form element var tagName=null;//html tag name while((fieldsetElement=$that.ge

(转)js获取url参数值

明天有空编辑下 今天做项目遇到js取得url地址问号后面的参数,找了下面的,用着非常好,项目是选项卡样式的,也就是一点击二级分类,底下的同样名字的背景变红(选项卡倍选中) http://www.cnblogs.com/jiekk/archive/2011/06/28/2092444.html 今天碰到要在一个页面获取另外一个页面url传过来的参数,一开始很本能的想到了用 split("?")这样一步步的分解出需要的参数. 后来想了一下,肯定会有更加简单的方法的!所以在网上找到了两个很又

JS获取URL中参数值(QueryString)的4种方法分享

http://www.jb51.net/article/48942.htm JS获取URL中参数值(QueryString)的4种方法分享 作者: 字体:[增加 减小] 类型:转载 今天碰到要在一个页面获取另外一个页面url传过来的参数,一开始很本能的想到了用 split("?")这样一步步的分解出需要的参数.后来想了一下,肯定会有更加简单的方法的!所以在网上找到了几个很又简单实用的方法,mark下. 方法一:正则法 复制代码 代码如下: function getQueryString

盘点用Java抓取HTTP服务器和FTP服务器的网页数据或图片等数据的实用技巧

摘要 在信息时代,常常需要通过编程的方式来灵活整理各种网络数据.首先涉及到如何方便准确地抓取网络数据.下面盘点用Java程序来访问HTTP服务器以及FTP服务器的各种实用技巧.主要介绍了Java Socket.java.net.URL类.Selenuim软件包.Apache HttpClients.Apache FTPClient来和HTTP服务器以及FTP服务器通信的方法以及其优缺点. 参考资料 (1)本文参考了笔者所写的<Java网络编程核心技术详解>,2020年上半年出版. (2)Jav

Mac预览怎么用 Mac预览功能实用技巧大全

Mac预览怎么用?有很多的用户以为Mac自带的预览功能只具有简单的图片浏览功能,其实不然,其实"预览"是一款强大的看图.修图.改图软件,也同时是一款多功能的 PDF 阅读与编辑工具,接下来Pc6苹果小编给大家详细介绍一下Mac预览功能实用技巧. 目前的 Mac 预览程式可以支持 TIFF. PNG. JPEG. GIF. BMP. PDF 等主要文件格式的浏览与编辑,而单纯预览上也可以支持像是 Photoshop 等专业图像处理软件. Office 等专业文书处理软件所产生的特殊文件格