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

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

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.云服务推荐: 国内主流云服务商,各类云产品的最新活动,优惠券领取。地址:阿里云腾讯云华为云

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

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

字符串的格式化功能的实现_js实现连接字符串及变量

在开发中过程中,经常会遇到使用占位符的形式来格式化字符串,我们通过js扩展String.prototype.format字符串拼接的功能,实现如下:

js中String.prototype实现string过滤空格_字符串空格过滤

我们都知道prototype可以向对象上添加属性和方法,语法如下:object.prototype.name=value。这篇文章就是利用prototype,为字符串扩展过滤空格的方法

使用String. localeCompare比较字符串

javascript提供stringA.localeCompare(stringB)方法,来判断一个字符串stringB是否排在stringA的前面。返回值: 如果引用字符存在于比较字符之前则为负数; 如果引用字符存在于比较字符之后则为正数; 相等的时候返回 0 。

js 字符串比较大小

数值是合乎常理的操作,其实字符串也可以比较大小;两个字符串比较大小,比较的是组成它们字符的ASCII码的大小,比较原则如下:比较的是字符的ASCII码的大小。

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

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

JavaScript 字符串实用方法总汇

JavaScript 字符串用于存储和处理文本。因此在编写 JS 代码之时她总如影随形,在你处理用户的输入数据的时候,在读取或设置 DOM 对象的属性时,在操作 Cookie 时,在转换各种不同 Date 时,诸此等等,繁不能数;

常用的Js字符串方法

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

ES6 字符串之模板字符串、标签模板、实用方法集

模板字符串:1.可写多行字符串 2.使用${}添加变量,模板字符串之中还能调用函数。标签模板的一个重要应用,就是过滤 HTML 字符串,防止用户输入恶意内容。

js字符串方法

查找字符串的位置(找到返回字符串首字母的位置,找不到返回-1):截取字符串:slice、substring、substr比较;替换字符串内容;转化为大写或小写;连接两个字符串或多个concat()

用JavaScript带你体验V8引擎解析字符串过程

AST模块其实要写的话,100篇都写不完,我将一些简单知识点翻译成JavaScript代码来进行讲解(v8内部的复杂性永远都能超出我的意料,现在看到万行的源码都已经没感觉了),如果谁想看C++源码,就去翻我前面的流水账

点击更多...

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

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

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