JS 文件本身编码转换 图文教程


Posted in Javascript onOctober 12, 2009

在百度、谷歌上一搜,大家都是说通过JAVA后台处理来解决编码问题,试问,这样能解决JS文件本身的编码问题吗?

之所以提出JS文件本身编码问题,是因为JS文件的编码不同,造成了中文显示为乱码。

通常,在Eclipse中建立一个JS文件(含有中文),在Eclipse的编辑器中看到的中文都很正常,但是显示在网页上就是乱码,而我的页面全部都是采用UTF-8编码进行编码的,为此,我想到了,这可能是JS文件本身编码问题造成的。

JS 文件本身编码转换 图文教程
在Eclipse中,JS文件中的中文显示正常

JS 文件本身编码转换 图文教程
在网页中,中文却显示为乱码

我想到了这可能是由于JS文件本身编码问题所导致的,其实这是正确的。这里要用到一个小工具,叫NotePad2,翻译过来就是记事本第代,这个小工具很好用,绿色免安装,完全可以取代windows系统自带的记事本软件。它的下载地址是:http://download.csdn.net/source/1732849

用NotePad2打开JS文件,查看JS文件的编码,发现JS文件的编码是ANSI,ANSI编码采用0x80~0xFF范围内的2个字节来表示1个字符。例如,汉字“中”在中文操作系统中,使用[0xD6,0xD0]这两个字节来存储。但是,不同的国家和地区制定了不同的ANSI标准,使得不同ANSI编码之间互不兼容。大家都知道,在中国,浏览器的编码要么是GBK或GB2312编码,要么是UTF8编码,当以ANSI编码的中文发送到网页上时,自然就显示为乱码了,所以这是问题的根本。

JS 文件本身编码转换 图文教程

借助NotePad2软件,将JS文件的编码转换成UTF-8编码,因为UTF-8编码是计算机通用编码,能支持几乎所有国家或地区的语言文字,而且浏览器本身就支持UTF-8编码。

JS 文件本身编码转换 图文教程

OK,再来看看在浏览器上的效果。显而易见,中文显示正常,乱码问题解决。并非像网上所说的“使用JS中的encodeURIComponent或encodeURI方法”,既复杂又难懂,还要经过复杂的编程,实在是不可取。

JS 文件本身编码转换 图文教程

经我的测试,无论是使用新建文本文档然后将扩展名改成.js,还是用其他软件或工具创建的JS文件,用NotePad2软件打开查看编码,发现 JS文件的编码都是ANSI,因此我猜测,难道JS文件的默认编码是ANSI编码?当然这个我并没有去考证,在网上也没有相关的资料可以证明JS文件的默认编码是ANSI编码,仅个人猜测而已。

但是,至少,如果JS文件中的中文在网页上显示为乱码,不妨采用本文章中的方法来试一试,或许能解决使你很头疼的问题。

Javascript 相关文章推荐
js 学习笔记(三)
Dec 29 Javascript
JavaScript中的运算符种类及其规则介绍
Sep 26 Javascript
JsRender for object语法简介
Oct 31 Javascript
JS实现文字向下滚动完整实例
Feb 06 Javascript
jquery实现textarea 高度自适应
Mar 11 Javascript
js仿支付宝填写支付密码效果实现多方框输入密码
Mar 09 Javascript
JS实现兼容各种浏览器的获取选择文本的方法【测试可用】
Jun 21 Javascript
jquery实现ajax提交表单信息的简单方法(推荐)
Aug 24 Javascript
Angular中使用ui router实现系统权限控制及开发遇到问题
Sep 23 Javascript
微信小程序 swiper组件详解及实例代码
Oct 25 Javascript
微信小程序手动添加收货地址省市区联动
May 18 Javascript
vue 子组件和父组件传值的示例
Sep 11 Javascript
jQuery 行级解析读取XML文件(附源码)
Oct 12 #Javascript
jquery select选中的一个小问题
Oct 11 #Javascript
Jquery 表单取值赋值的一些基本操作
Oct 11 #Javascript
jquery 框架使用教程 AJAX篇
Oct 11 #Javascript
jQuery live( type, fn ) 委派事件实现
Oct 11 #Javascript
修改jQuery.Autocomplete插件 支持中文输入法 避免TAB、ENTER键失效、导致表单提交
Oct 11 #Javascript
JS模拟的QQ面板上的多级可展开的菜单
Oct 10 #Javascript
You might like
PHP 图片文件上传实现代码
2010/12/29 PHP
php自动获取字符串编码函数mb_detect_encoding
2011/05/31 PHP
php在window iis的莫名问题的测试方法
2013/05/14 PHP
php将access数据库转换到mysql数据库的方法
2014/12/24 PHP
Symfony查询方法实例小结
2017/06/28 PHP
网页打开自动最大化的js代码
2012/08/22 Javascript
nodejs读取memcache示例分享
2014/01/02 NodeJs
使用js完成节点的增删改复制等的操作
2014/01/02 Javascript
JavaScript中getUTCSeconds()方法的使用详解
2015/06/11 Javascript
jQuery垂直多级导航菜单代码分享
2015/08/18 Javascript
Angularjs中UI Router全攻略
2016/01/29 Javascript
JS请求servlet功能示例
2017/06/01 Javascript
JS时间控制实现动态效果的实例讲解
2017/07/31 Javascript
BootStrap中的模态框(modal,弹出层)功能示例代码
2018/11/02 Javascript
9102了,你还不会移动端真机调试吗
2019/03/25 Javascript
解决LayUI数据表格复选框不居中显示的问题
2019/09/25 Javascript
flask框架视图函数用法示例
2018/07/19 Python
对python多线程中互斥锁Threading.Lock的简单应用详解
2019/01/11 Python
django迁移数据库错误问题解决
2019/07/29 Python
tensorflow实现对张量数据的切片操作方式
2020/01/19 Python
python连接PostgreSQL过程解析
2020/02/09 Python
python集合删除多种方法详解
2020/02/10 Python
Python中logger日志模块详解
2020/08/04 Python
CSS3基础(RGBa、text-shadow、box-shadow、border-radius)
2012/11/13 HTML / CSS
可能这些是你想要的H5软键盘兼容方案(小结)
2019/04/23 HTML / CSS
西式婚礼证婚词
2014/01/12 职场文书
办公室主任先进事迹
2014/01/18 职场文书
村长贪污检举信
2014/04/04 职场文书
2014年党支部承诺书
2014/05/30 职场文书
卫生院健康教育实施方案
2014/06/07 职场文书
车辆年检委托书范本
2014/10/14 职场文书
基层党员学习党的群众路线教育实践活动心得体会
2014/11/04 职场文书
幼儿园个人师德总结
2015/02/06 职场文书
2015年小学校长工作总结
2015/05/19 职场文书
2019最新版股权转让及委托持股协议书范本
2019/08/07 职场文书
浅谈JS和Nodejs中的事件驱动
2021/05/05 NodeJs