当前位置: 首页 > news >正文

对比 javascript url编码


常用的编码格式有:escape(), encodeURL(), encodeURIComponent() 区别如下:

escape() 方法:

采用ISO Latin字符集对指定的字符串进行编码。所有的空格符、标点符号、特殊字符以及其他非ASCII字符都将被转化成%xx格式的字符编码(xx等于该字符在字符集表里面的编码的16进制数字)。比如,空格符对应的编码是%20。
不会被此方法编码的字符: @ * / +


encodeURI() 方法:

把URI字符串采用UTF-8编码格式转化成escape格式的字符串。
不会被此方法编码的字符:! @ # $& * ( ) = : / ; ? + '

encodeURIComponent() 方法:

把URI字符串采用UTF-8编码格式转化成escape格式的字符串。与encodeURI()相比,这个方法将对更多的字符进行编码,比如 / 等字符。所以如果字符串里面包含了URI的几个部分的话,不能用这个方法来进行编码,否则 / 字符被编码之后URL将显示错误。
不会被此方法编码的字符:! * ( ) '
因此,对于中文字符串来说,如果不希望把字符串编码格式转化成UTF-8格式的(比如原页面和目标页面的charset是一致的时候),只需要使用escape。如果你的页面是GB2312或者其他的编码,而接受参数的页面是UTF-8编码的,就要采用encodeURI或者encodeURIComponent。
另外,encodeURI/encodeURIComponent是在javascript1.5之后引进的,escape则在javascript1.0版本就有。



本文转自94cool博客园博客,原文链接:http://www.cnblogs.com/94cool/articles/1501787.html,如需转载请自行联系原作者

相关文章:

  • Android -- Adapter
  • 基于webpack的几种静态资源的引入方案
  • redis集群搭建
  • 智能盒子大比拼:Fire TV vs. Apple TV vs. Roku 3 vs. Chromecast
  • 数据挖掘算法Analysis Services-基于SQL Server的数据挖掘
  • DataBase in Android
  • 日志收集方式总结(转载)
  • 编译脚本支持(Build script support)
  • Docker 后台进程参数-------更改Docker运行根目录的方法
  • Python 爬虫入门3种方法
  • GSSAPIAuthentication=no
  • 红帽推 Ansible Tower 3.1 扩展 DevOps自动化功能
  • 从边缘计算看移动化与云计算的融合之道
  • 卡巴斯基:Duqu2.0病毒使用的数字证书窃取自富士康
  • 网络攻击检测:五大致命弱点和解决办法
  • [PHP内核探索]PHP中的哈希表
  • [ JavaScript ] 数据结构与算法 —— 链表
  • 345-反转字符串中的元音字母
  • Apache Pulsar 2.1 重磅发布
  • conda常用的命令
  • ECMAScript6(0):ES6简明参考手册
  • HTML5新特性总结
  • java架构面试锦集:开源框架+并发+数据结构+大企必备面试题
  • jquery ajax学习笔记
  • MySQL数据库运维之数据恢复
  • SQL 难点解决:记录的引用
  • XForms - 更强大的Form
  • 基于组件的设计工作流与界面抽象
  • 那些被忽略的 JavaScript 数组方法细节
  • 思考 CSS 架构
  • 推荐一个React的管理后台框架
  • 项目管理碎碎念系列之一:干系人管理
  • 学习JavaScript数据结构与算法 — 树
  • 通过调用文摘列表API获取文摘
  • #、%和$符号在OGNL表达式中经常出现
  • #NOIP 2014# day.1 T3 飞扬的小鸟 bird
  • (+4)2.2UML建模图
  • (12)Hive调优——count distinct去重优化
  • (4) PIVOT 和 UPIVOT 的使用
  • (Redis使用系列) Springboot 实现Redis消息的订阅与分布 四
  • (八)光盘的挂载与解挂、挂载CentOS镜像、rpm安装软件详细学习笔记
  • (附源码)springboot 基于HTML5的个人网页的网站设计与实现 毕业设计 031623
  • (附源码)springboot宠物医疗服务网站 毕业设计688413
  • (论文阅读26/100)Weakly-supervised learning with convolutional neural networks
  • (四)图像的%2线性拉伸
  • (转)我也是一只IT小小鸟
  • (转载)利用webkit抓取动态网页和链接
  • .NET 反射 Reflect
  • .NET 解决重复提交问题
  • .Net+SQL Server企业应用性能优化笔记4——精确查找瓶颈
  • .Net6使用WebSocket与前端进行通信
  • .net操作Excel出错解决
  • .net和jar包windows服务部署
  • .NET中GET与SET的用法
  • :“Failed to access IIS metabase”解决方法