字符编码,URL编码,JavaScript编码函数

字符编码

1.ASCII

用8位即1个字节表示所有状态,共有256个状态,其中,前127号被用来英文字母数字等常用字符

2.扩展字符集

由于ASCII码不能编码更多国家的字符,于是将将128号-255之间的状态用来编码新字符,成为扩展字符集

3.GB2312

ASCII码和扩展字符集中没有可用的状态编码汉字,机智的中国人将127号之后的奇异字符全部取消,规定小于127号的字符和以前一样,但两个大于127的字符连在一起就是汉字,高字节从161-247,低字节从161-254,即组合出7000多个汉字,同时将数学符号希腊字母等包含进去,即所谓的全角,而127号以下就是半角

4.GBK

为了扩充中国汉字,不再要求GB2312中低字节一定大于127,因此又扩充了一万多汉字。命名为DBCS,双字节字符集

5.Unicode

清除以前所有的编码方式,统一用2个字节表示所有国家的字符,即1个英文字符或者一个汉字统称为1个自符,都用2字节表示,对于英文高字节全为0,浪费空间。

6.UTF-8

由于Unicode表示英文浪费空间,未解决其在网络传输问题,Unicode Transfor Format即UTF出现了,而UTF-8就是每次传输1个字节,UTF-8最大的特点就是边长编码方式,可使用1-4个字节表示一个符号,当字符在ASCII范围内时,就用1个字节进行表示。

7.Unicode和UTF-8转换

Unicode编码(十六进制) 
UTF-8 字节流(二进制)
000000-00007F
0xxxxxxx
000080-0007FF
110xxxxx 10xxxxxx
000800-00FFFF
1110xxxx 10xxxxxx 10xxxxxx
010000-10FFFF11110xxx10xxxxxx10xxxxxx10xxxxxx

“汉”字的Unicode编码是0x6C49。0x6C49在0x0800-0xFFFF之间,使用用3字节模板了:1110xxxx 10xxxxxx 10xxxxxx。将0x6C49写成二进制是:0110 1100 0100 1001, 用这个比特流依次代替模板中的x,得到:11100110 10110001 10001001,即E6 B1 89。

URL编码

1.网址路径中包含汉字使用UTF-8编码

2.GET|POST请求用meta标签中定义的编码方式

<meta http-equiv="Content-Type" content="text/html;charset=xx">

3.ajax请求中采用操作系统默认的编码方式

JavaScript编码函数

1. escape()

返回Unicode编码

2. encodeURI()

encodeURI是真正用来编码URI的函数,他对整个URL 进行编码,对特殊符号如 ;/? 不编码

3. encodeURIComponent()

对URL的组成部分进行个别编码,对特殊符号进行编码

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值