javascript字符串进行编码的方法:escape编码、encodeURI编码、encodeURIComponent编码

时间: 2017-12-14阅读: 954标签: 字符串

1.escape();

语法
escape(string) // string 必需。要被转义或编码的字符串。
返回值
已编码的 string 的副本。其中某些字符被替换成了十六进制的转义序列。
说明:
该方法不会对 ASCII 字母和数字进行编码,也不会对下面这些 ASCII 标点符号进行编码:** * @ - _ + . / **
解码:
unescape();
提示:
ECMAScript v3 反对使用该方法,用 encodeURI() 和 encodeURIComponent() 替代它。但是如果想转义单引号,用这个就蛮好的。
例子

console.log(escape("Visit W3School!"))  //Visit%20W3School%21
console.log(escape("?!=()#%&")) //%3F%21%3D%28%29%23%25%26
console.log(escape("*@-_+./"))  //*@-_+./
console.log(escape("'"))    //%27


2.encodeURI();

语法:
encodeURI(URIstring) // URIstring 必需。一个字符串,含有 URI 或其他要编码的文本。
返回值:
已编码的 URIstring 的副本,其中的某些字符将被十六进制的转义序列进行替换。
说明:
该方法不会对 ASCII 字母和数字进行编码,也不会对这些 ASCII 标点符号进行编码:** - _ . ! ~ * ' ( ) **
该方法的目的是对 URI 进行完整的编码,因此对以下在 URI 中具有特殊含义的 ASCII 标点符号,encodeURI() 函数是不会进行转义的:;/?:@&=+$,#
提示:
如果 URI 组件中含有分隔符,比如 ? 和 #,则应当使用 encodeURIComponent() 方法分别对各组件进行编码。
例子:

console.log(encodeURI("http://www.w3school.com.cn"))    //http://www.w3school.com.cn
console.log(encodeURI("http://www.w3school.com.cn/yzb/"))   //http://www.w3school.com.cn/yzb/
console.log(encodeURI(";/?:@&=+$,#"))   //;/?:@&=+$,#
console.log(encodeURI("-_.!~*'()")) //-_.!~*'()
console.log(encodeURI(" ")) //%20


3.encodeURIComponent();

语法:
encodeURIComponent(URIstring) // URIstring 必需。一个字符串,含有 URI 组件或其他要编码的文本。
返回值:
已编码的 URIstring 的副本,其中的某些字符将被十六进制的转义序列进行替换。
说明:
该方法不会对 ASCII 字母和数字进行编码,也不会对这些 ASCII 标点符号进行编码: ** - _ . ! ~ * ' ( ) **
其他字符(比如:** ;/?:@&=+$,# ** 这些用于分隔 URI 组件的标点符号),都是由一个或多个十六进制的转义序列替换的。
提示:
请注意 encodeURIComponent() 函数 与 encodeURI() 函数的区别之处,前者假定它的参数是 URI 的一部分(比如协议、主机名、路径或查询字符串)。因此 encodeURIComponent() 函数将转义用于分隔 URI 各个部分的标点符号。
例子:

console.log(encodeURIComponent("http://www.w3school.com.cn"))   //http%3A%2F%2Fwww.w3school.com.cn
console.log(encodeURIComponent("http://www.w3school.com.cn/yzb/"))  //http%3A%2F%2Fwww.w3school.com.cn%2Fyzb%2F
console.log(encodeURIComponent(";/?:@&=+$,#"))  //%3B%2F%3F%3A%40%26%3D%2B%24%2C%23
console.log(encodeURIComponent("-_.!~*'()"))    //-_.!~*'()
console.log(encodeURIComponent(" "))    //%20
站长推荐

1.阿里云: 本站目前使用的是阿里云主机,安全/可靠/稳定。点击领取2000元代金券、了解最新阿里云产品的各种优惠活动点击进入

2.腾讯云: 提供云服务器、云数据库、云存储、视频与CDN、域名等服务。腾讯云各类产品的最新活动,优惠券领取点击进入

3.广告联盟: 整理了目前主流的广告联盟平台,如果你有流量,可以作为参考选择适合你的平台点击进入

链接: http://www.fly63.com/article/detial/249

javaScript 如何使用js追加字符串呢?

字符串的操作是任何一门计算机语言都必须面对的问题,那么js中我们该如何对字符串进行相关操作列,下文将一一道来: 常见的字符串追加有以下三种需求:

Js实现字符串压缩

字符串压缩。利用字符重复出现的次数,编写一种方法,实现基本的字符串压缩功能。比如,字符串aabcccccaaa会变为a2b1c5a3。若“压缩”后的字符串没有变短,则返回原先的字符串。你可以假设字符串中只包含大小写英文字母

js如何截取字符串后几位?

javascript截取字符串的方法有substring(start,stop)、substr(start,length)、slice(start,end),通过设置其中参数就可以截取字符串后几位。

js精确计算字符串字节长度

精确计算字符串长度,不能简单使用length,比如双字节字符会被计算成一个数量,所以需要计算字符串的字节数进行对比.

javascript如何设置字符串首字母大写?

给出一个字符串,如何确保字符串的首字母都大写?下面本篇文章就来给大家介绍一下使用javascript设置首字母大写的方法,希望对大家有所帮助。在javascript中,可以使用slice()方法、toUpperCase()方法和toLowerCase()方法来设置首字母大写

javascript中如何截取字符串?

JavaScript中截取字符串有三种方法,分别是substring(),substr(),split()。下面本篇文章就来给大家介绍一下它们的使用方法,希望对大家有所帮助。

JS字符串首字母都大写的几种方法

正则+replace思路:用正则将字符串拆分为单词数组,并对每个单词进行首字母大写处理。这里简单的把字母、数字、下划线和单撇号都视为了单词成员。

常用的Js字符串方法

startsWith()检查字符串是否以指定的字符开头,endsWith()检查字符串是否以指定的字符结束,includes()检查字符串是否包含指定的字符,slice()复制字符串的某些部分而不修改原字符串

JS/CSS实现字符串单词首字母大写

正则表达式b会把英文缩写,譬如m拆分成两个部分,导致输出为所以不能使用b ;b匹配一个单词边界,也就是指单词和空格间的位置;w:匹配包括下划线的任何单词字符;*:匹配前面的子表达式零次或多次

JS通过身份证号码获取出生年月日和性别

String.substr(start,length) -- start,开始截取下标 length,截取的长度 ;String.replace(/(.{4})(.{2})/,\"$1-$2-\"); --正则,$1-,$2- 分别是引用,前面正则匹配到的字符串

内容以共享、参考、研究为目的,不存在任何商业目的。其版权属原作者所有,如有侵权或违规,请与小编联系!情况属实本人将予以删除!

文章投稿关于web前端网站点搜索站长推荐网站地图站长QQ:522607023

小程序专栏: 土味情话心理测试脑筋急转弯幽默笑话段子句子语录成语大全运营推广