论html页面和javascript编码格式在浏览器中显示

腾出时间做了详细的测试,如果有疑问的请留言,简体中文系统下,ANSI 编码代表 GB2312 编码

第一次测试:

1,  utf-8格式的页面内加上<meta http-equiv="content-type" content="text/html;charset=utf-8">或者不加,所有浏览器都显示正常

2,  gbk格式的页面内加上<meta http-equiv="content-type" content="text/html;charset=utf-8">后所有浏览器都显示乱码,且乱码都一样

3,  gbk格式的页面内加上<meta http-equiv="content-type" content="text/html;charset=gbk">后所有浏览器都显示正常

4,  gbk格式下的页面无meta下,除safari下显示乱码,其他浏览器下都显示正常

5,  浏览器会根据meta自动设置编码格式,如果没有meta,会根据页面本事的格式设置编码格式,当meta和页面本事的格式不同时会出现乱码,utf-8格式的页面,不会出现乱码

第二次测试

1,  在无meta下utf-8页面浏览器自动生成utf-8,无乱码,但是js为gbk不设置charset,和设置为utf-8时为js为乱码,设置charset为gbk时正常

6,  在无meta下gbk页面浏览器自动生成gbk,无乱码,但是js为gbk切设置charset时为utf-8乱码,其他情况都正常,js默认是utf-8格式加载

总结:页面本事格式和meta都要保持一致才会显示正常中文,推荐都使用utf-8格式的html和js,还有不同编辑器显示为正常中文,但是浏览器也有可能出现乱码,这是编辑器显示的问题,有些编辑器能把乱码纠正为正常中文,大家最好能在txt编辑器里测试

原文地址:https://www.cnblogs.com/55555azhe/p/3428213.html