聊聊网页乱码的问题

我们在浏览网站的时候经常会看到一些类似乱码的字符串。这些是如何产生的呢,又该怎么解决。

Paste_Image.png

基本你所看到的网页都是图上这个流程,那么乱码是怎么产生的呢?
图中‘’网页‘’比喻成一个中国人,服务器比喻成一个聊天软件,浏览器比喻成一个外国人,那么就是你和一个外国人在对话,你说的是中文,外国人说的英文,那么问题就产生了,你们都听不懂对方说的是什么。怎么解决这个问题呢?
解决的方式就是你也说英语那对方就明白了,或者对方学汉语这样这样对方也能明白。

怎么能让网页和浏览器使用相同的语言呢。这里我们就少几种编码方式

  • ASCII
    全称美国标准信息交换代码(American Standard Code for Information Interchange)的缩写, 为美国英语通信所设计。它由128个字符组成,包括大小写字母、数字0-9、标点符号、非打印字符(换行符、制表符等4个)以及控制字符(退格、响铃等)组成,每个字符占7位(1字节是8位)。 就是只有英文、数字和标点符号,如果有中文就会出现乱码
  • ISOLatin-1
    可以认为ASCII是美国发明针对英语设计的知道就行了,用不上
  • Unicode
    后来计算机不断发展扩展到亚洲非洲,如何用计算机使用的二进制表示这些语言又成了问题。ISOLatin-1的8位字符集只能表示256个字符,而仅汉语就有80000以上个字符。如何把地球上绝大多数语言用一种编码方式表示出来呢? 于是发明了UNICODE编码,只用2个字节(16位)就可以编码地球上几乎所有地区的文字。终于有中文了
  • UTF-8
    utf-8(8-bit Unicode Transformation Format)是一种针对Unicode的可变长度字符编码,又称万国码。UTF-8用1到6个字节编码UNICODE字符。用在网页上可以同一页面显示中文简体繁体及其它语言(如英文,日文,韩文)。普遍都用这个
  • GBK
    中国制定一套自己的规则,于是用2个字节来表示一个汉字,总共可以覆盖2万多个文字。 保留UTF-8同样的方式使用一个字节来表示英文。推荐在国内使用
    使网页和浏览器使用相同的语言,我们不用控制浏览器的编码方式,因为每个浏览器都有自动检测页面编码的功能
Paste_Image.png

我们只要在自己的网页上使用meta标签声明网页的编码方式就可以避免页面乱码的问题

<meta charset="utf-8">

本文章著作权归 杜宪 和饥人谷(QQ 群: 222459918) 所有,转载须说明来源

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容