js字符串转义操作函数

js中有很多函数可以用来转义和反转义,如escape()和unescape()、encodeURI()和decodeURI()、encodeURIComponent()和decodeURIComponent()等。

1.escape()和unescape()

   escape()函数将参数转换为字符串,并以URL编码的格式进行编码。在这种格式中,所有空格、标点、重音符号以及其他非ASCII字符都要%xx十六进制序列码代替。如空格的返回时%20。

   escape(param);

   参数param是转换为字符串并以URL编码格式进行编码的表达式。

    unescape()功能恰好相反,将URL编码格式字符串进行解码返回字符串。

   unescape(param);

   例如:

   escape("Hello{[World]}");

  转义结果为:Hello%7B%5BWorld%5D%7D

 unescape("Hello%7B%5BWorld%5D%7D")

 返回结果:Hello{[World]}

缺点:escape()和unescape()只能处理ASCII字符,不推荐使用这两个方法进行转义、解码。

2.encodeURI()和decodeURI()

encodeURI()函数将文本字符串编码为一个有效的统一资源标识符(URI)。而decodeURI()将URI解码为一般字符串。

encodeURI(param);

param是一个将被编码的字符串

decodeURI(param);

恰恰相反

例如:

encodeURI("Hellow{[World]}")

  转义结果为:Hello%7B%5BWorld%5D%7D

decodeURI("Hello%7B%5BWorld%5D%7D")

 返回结果:Hello{[World]}。

注意:

encodeURI()函数单靠自身不能形成HTTP GET请求或者POST请求,因为&、+、=都不会被转码,这几个字符在GET或POST请求中被作为特殊字符对待。

3.encodeURIComponent()和decodeURIComponent()

这两个函数也是用来编码和解码

decodeURIComponent(URIString)

URIString为一个已编码的URI组件。

encodeURIComponent(URIString)

 

var aa='哈哈+呵呵';

encodeURIt(aa)  //'哈哈 呵呵'

encodeURIComponent(aa)  //'哈哈+呵呵'

encodeURIComponent()可以转换除英文字母、数字、-、_、.、!、~、*、'、(、)外的所有字符

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值