JS的编码、解码及C#中对应的解码、编码 itprobie

1、escape

定义和用法

escape对字符串数据编码,如果是对url进行编码必须用encodeURI或是encodeURLComponent,解码使用:unescape。

返回值

字符集是unicode,编码成16进制。

说明

不编码字符有69个:
特殊符号:* + - . / @ _
数字及字母:0-9,a-z,A-Z

C#:

在项目中引用.net组件"Microsoft.Jscript" Microsoft.JScript.GlobalObject类中有与JS对应编码/解码函数Microsoft.JScript.GlobalObject.escape

2、encodeURI

定义和用法

encodeURI对整个url编码,如果url参数中有特殊字符如“#”,“$”,"&"等字符用encodeURIComponent,因为url中的参数分隔符"&"会被编码,解码使用decodeURI()。

返回值

UTF-8编码格式,编码成16进制

说明

不编码字符有82个:
特殊符号:! # $ & ' ( ) * + , - . / : ; = ? @ _ ~
数字及字母:0-9,a-z,A-Z

C#:

在项目中引用.net组件"Microsoft.Jscript" Microsoft.JScript.GlobalObject类中有与JS对应编码/解码函数Microsoft.JScript.GlobalObject.encodeURI

3、encodeURIComponent

定义和用法

encodeURIComponent对url的参数值进行编码,如果url中有“#”,“$”,"&"等字符encodeURI不会编码,所有有特殊字符必须用encodeURIComponent,解码使用decodeURIComponent()。

返回值

UTF-8编码格式,编码成16进制

说明

不编码字符有71个:
特殊符号:! ' ( ) * - . _ ~
数字及字母:0-9,a-z,A-Z


C#:

在项目中引用.net组件"Microsoft.Jscript" Microsoft.JScript.GlobalObject类中有与JS对应编码/解码函数Microsoft.JScript.GlobalObject.encodeURIComponent

程序员的基础教程:菜鸟程序员

原文地址:https://www.cnblogs.com/guohu/p/3031091.html