javascript url几种编码方式详解

1. escape() 不能直接用于URL编码,它的真正作用是返回一个字符的Unicode编码值。比如“春节”的返回结果是%u6625%u8282,escape()不对"+"编码主要用于汉子编码,现在已经不提倡使用了。

2. encodeURI()是javascript中真正用来对URL编码的函数。编码整个URL地址,但对特殊含义的符号";/?:@&=+$,#",也不进行编码。对应的解码函数是decodeURI()。

3. encodeURIComponent()能编码";/?:@&=+$,#"这些特殊字符。对应的解码函数decodeURIComponent()。假如要传递带&符号的网址,所以用encodeURIComponent()

总结,有次需要在前台传个"+"符号到后台中,没想到到了后台中自动解码成了空格,最后查到url中“+”对应的后台就是空格,空格在前台会自动变成+传到后台,所以开始要对"+"进行编码,如果确定参数中可能有会有"+"的话,传值之前首先对它进行encodeURIComponent()对它进行编码,到后台取值的时候会变成"+"。

以上这篇javascript url几种编码方式详解就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持我们。

时间: 2016-06-04

Javascript中的几种URL编码方法比较

javascript中存在几种对URL字符串进行编码的方法:escape(),encodeURI(),以及encodeURIComponent().这几种编码所起的作用各不相同. escape() 方法: 采用ISO Latin字符集对指定的字符串进行编码.所有的空格符.标点符号.特殊字符以及其他非ASCII字符都将被转化成%xx格式的字符编码(xx等于该字符在字符集表里面的编码的16进制数字).比如,空格符对应的编码是%20. 不会被此方法编码的字符: @ * / + encodeURI()

JavaScript给url网址进行encode编码的方法

本文实例讲述了JavaScript给url网址进行encode编码的方法.分享给大家供大家参考.具体分析如下: JavaScript给url网址进行encode编码,使用encodeURIComponent即可 var myUrl = 'http://www.baidu.com'; var myOtherUrl = "http://www.jb51.net/index.html?url="+encodeURIComponent(myUrl); 希望本文所述对大家的javascript程

JavaScript中URL编码函数代码

以下是对变量值的URL编码总结 : 建议用encodeURIComponent() , GET 和POST方式都可以发送过去 . JavaScript中存在几种对URL字符串进行编码的方法:escape(),encodeURI(),以及encodeURIComponent().这几种编码所起的作用各不相同. escape() 方法: 采用ISO Latin字符集对指定的字符串进行编码.所有的空格符.标点符号.特殊字符以及其他非ASCII字符都将被转化成%xx格式的字符编码(xx等于该字符在字符集

Javascript下的urlencode编码解码方法附decodeURIComponent

关于在ASP(Server.UrlEncode).PHP(urlencode())函数编码结果,或是经过asp.php等动态语言直接写入COOKIES的中文字符,用JS读取的时候,都会碰到一个编码的问题,那就是最终字符串被urlencode编码了,而又时有需要从JS在客户端去读取这些数据. 而本文,就大概说说如何在js中通过系统自带的函数去解决这个问题. 而相信碰到过此问题的朋友应该都有所了解,目前网络上流行一些js下的自定义函数去解决这个问题,如说vbscript(URLDecode()).j

javascript URL编码和解码使用说明

在有些传递页面使用GB2312,而在接收页面使用 UTF8,这样接收到的参数就可能会与原来发生不一致.使用服务器端的urlEncode函数编码的URL,与使用客户端javascript的 encodeURI函数编码的URL,结果就不一样. javaScript中的编码方法: escape() 方法: 采用ISO Latin字符集对指定的字符串进行编码.所有的空格符.标点符号.特殊字符以及其他非ASCII字符都将被转化成%xx格式的字符编码 (xx等于该字符在字符集表里面的编码的16进制数字).比

关于js和php对url编码的处理方法

解决办法: 采用js对URL中的汉字进行escape编码. 复制代码 代码如下: <a href="" onclick="window.open('product_list.php?p_sort='+escape('PHP开发资源网'));"> 这样点击链接后的效时: 引用:http://127.0.0.1/shop/product_list.php?p_sort=PHP%u5F00%u53D1%u8D44%u6E90%u7F51 生成了这样的效果, 很

JS表单传值和URL编码转换

注意: 这里写了两个网页 因为URL传过去的数据不支持中文字符和一些特殊符号 所以需要转换一下编码 实现效果:网页1的表单数据传到网页2并显示出来 网页1代码如下: <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-wid

JS前端知识点 运算符优先级,URL编码与解码,String,Math,arguments操作整理总结

本文实例讲述了JS前端知识点 运算符优先级,URL编码与解码,String,Math,arguments操作.分享给大家供大家参考,具体如下: Js 中的运算符优先级 优先级依次降低 () !.-.++.– *./.% +.- <.<=.<.>= ==.!=.===.!==. && || ?: =.+=.-=.*=./=.%= URL 编码和解码 encodeURIComponent() decodeURIComponent() encodeURI() decode

url 编码 js url传参中文乱码解决方案

1.配置文件web.config中 在节中加上整个网站的编码方式. <globalization fileEncoding="GB2312" requestEncoding="GB2312" responseEncoding="GB2312"/> 这样参数就以gb2312的中文编码方式传输了.而一般默认是utf-8. 2.在传参是先编码在传输,接受时先编码,在接收. string mm=Server.URLEncode(你); Res

js下用gb2312编码解码实现方法

需求 在js中将中文用gb2312编码.如,"我"编码后应该是"%CE%D2". 分析 大家知道,encodeURI和encodeURIComponent会用utf-8编码,如"我"编码后是"%E6%88%91".据实验,似乎没有参数指定编码的地方.只有另寻他法. 大致分析有如下几种解决方案: 1. 用js创建一个隐藏的iframe并指定其为gb2312编码,将需要转换的文本放到iframe的form的一个input中,将fo

JS实现获取当前URL和来源URL的方法

本文实例讲述了JS实现获取当前URL和来源URL的方法.分享给大家供大家参考,具体如下: index.html: <!DOCTYPE html> <html lang="zh-cn"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1,max

asp.net URL编码与解码

例如Url参数字符串中使用key=value键值对这样的形式来传参,键值对之间以&符号分隔,如/s?q=abc&ie=utf-8.如果你的value字符串中包含了=或者&,那么势必会造成接收Url的服务器解析错误,因此必须将引起歧义的&和=符号进行转义,也就是对其进行编码. 又如,Url的编码格式采用的是ASCII码,而不是Unicode,这也就是说你不能在Url中包含任何非ASCII字符,例如中文.否则如果客户端浏览器和服务端浏览器支持的字符集不同的情况下,中文可能会造成

python实现中文转换url编码的方法

本文实例讲述了python实现中文转换url编码的方法.分享给大家供大家参考,具体如下: 今天要处理百度贴吧的东西.想要做一个关键词的list,每次需要时,直接添加 到list里面就可以了.但是添加到list里面是中文的情况(比如'丽江'),url的地址编码却是'%E4%B8%BD%E6%B1%9F',因此需 要做一个转换.这里我们就用到了模块urllib. >>> import urllib >>> data = '丽江' >>> print dat

C++类URL编码和解码使用技巧

在项目开发过程中,经常会使用到c++ 的url编码和解码,本文将以此问题详细介绍使用技巧,需要的朋友可以参考下 复制代码 代码如下: #pragma once #include <iostream> #include <string> #include <windows.h> using namespace std; class strCoding { public: strCoding(void); ~strCoding(void); void UTF_8ToGB23

js获取当前页的URL与window.location.href简单方法

利用JavaScript获取当前页的URL,这个问题起来好像很复杂,如果第一次去想这个问题,很多人估计又在琢磨到底又是哪个神一般的Javascript函数. 其实不是,Javascript获取当前页的URL的函数就是我们经常用来重定向的window.location.href. 比如如下函数: <script> var url=window.location.href; var loc = url.substring(url.lastIndexOf('/')+1, url.length); a