JS 文件本身編碼轉(zhuǎn)換 圖文教程
在百度、谷歌上一搜,大家都是說(shuō)通過(guò)JAVA后臺(tái)處理來(lái)解決編碼問(wèn)題,試問(wèn),這樣能解決JS文件本身的編碼問(wèn)題嗎?
之所以提出JS文件本身編碼問(wèn)題,是因?yàn)镴S文件的編碼不同,造成了中文顯示為亂碼。
通常,在Eclipse中建立一個(gè)JS文件(含有中文),在Eclipse的編輯器中看到的中文都很正常,但是顯示在網(wǎng)頁(yè)上就是亂碼,而我的頁(yè)面全部都是采用UTF-8編碼進(jìn)行編碼的,為此,我想到了,這可能是JS文件本身編碼問(wèn)題造成的。

在Eclipse中,JS文件中的中文顯示正常

在網(wǎng)頁(yè)中,中文卻顯示為亂碼
我想到了這可能是由于JS文件本身編碼問(wèn)題所導(dǎo)致的,其實(shí)這是正確的。這里要用到一個(gè)小工具,叫NotePad2,翻譯過(guò)來(lái)就是記事本第代,這個(gè)小工具很好用,綠色免安裝,完全可以取代windows系統(tǒng)自帶的記事本軟件。它的下載地址是:http://download.csdn.net/source/1732849
用NotePad2打開(kāi)JS文件,查看JS文件的編碼,發(fā)現(xiàn)JS文件的編碼是ANSI,ANSI編碼采用0x80~0xFF范圍內(nèi)的2個(gè)字節(jié)來(lái)表示1個(gè)字符。例如,漢字“中”在中文操作系統(tǒng)中,使用[0xD6,0xD0]這兩個(gè)字節(jié)來(lái)存儲(chǔ)。但是,不同的國(guó)家和地區(qū)制定了不同的ANSI標(biāo)準(zhǔn),使得不同ANSI編碼之間互不兼容。大家都知道,在中國(guó),瀏覽器的編碼要么是GBK或GB2312編碼,要么是UTF8編碼,當(dāng)以ANSI編碼的中文發(fā)送到網(wǎng)頁(yè)上時(shí),自然就顯示為亂碼了,所以這是問(wèn)題的根本。

借助NotePad2軟件,將JS文件的編碼轉(zhuǎn)換成UTF-8編碼,因?yàn)閁TF-8編碼是計(jì)算機(jī)通用編碼,能支持幾乎所有國(guó)家或地區(qū)的語(yǔ)言文字,而且瀏覽器本身就支持UTF-8編碼。

OK,再來(lái)看看在瀏覽器上的效果。顯而易見(jiàn),中文顯示正常,亂碼問(wèn)題解決。并非像網(wǎng)上所說(shuō)的“使用JS中的encodeURIComponent或encodeURI方法”,既復(fù)雜又難懂,還要經(jīng)過(guò)復(fù)雜的編程,實(shí)在是不可取。

經(jīng)我的測(cè)試,無(wú)論是使用新建文本文檔然后將擴(kuò)展名改成.js,還是用其他軟件或工具創(chuàng)建的JS文件,用NotePad2軟件打開(kāi)查看編碼,發(fā)現(xiàn) JS文件的編碼都是ANSI,因此我猜測(cè),難道JS文件的默認(rèn)編碼是ANSI編碼?當(dāng)然這個(gè)我并沒(méi)有去考證,在網(wǎng)上也沒(méi)有相關(guān)的資料可以證明JS文件的默認(rèn)編碼是ANSI編碼,僅個(gè)人猜測(cè)而已。
但是,至少,如果JS文件中的中文在網(wǎng)頁(yè)上顯示為亂碼,不妨采用本文章中的方法來(lái)試一試,或許能解決使你很頭疼的問(wèn)題。
- javascript unicode與GBK2312(中文)編碼轉(zhuǎn)換方法
- JS 文字符串轉(zhuǎn)換unicode編碼函數(shù)
- javascript實(shí)現(xiàn)unicode和字符的互相轉(zhuǎn)換
- javascript下漢字和Unicode編碼互轉(zhuǎn)代碼
- js中unicode轉(zhuǎn)碼方法詳解
- JavaScript中字符串與Unicode編碼互相轉(zhuǎn)換的實(shí)現(xiàn)方法
- javascript實(shí)現(xiàn)unicode與ASCII相互轉(zhuǎn)換的方法
- JavaScript語(yǔ)言對(duì)Unicode字符集的支持詳解
- JavaScript實(shí)現(xiàn)Base64編碼轉(zhuǎn)換
- js 編碼轉(zhuǎn)換 gb2312 和 utf8 互轉(zhuǎn)的2種方法
- JS實(shí)現(xiàn)的Unicode編碼轉(zhuǎn)換操作示例
相關(guān)文章
javascript 中String.match()與RegExp.exec()的區(qū)別說(shuō)明
最近看了javascript權(quán)威指南 里面的正則部分,match和exec方法有一些相同點(diǎn)和不同點(diǎn),在這里寫(xiě)一下加深一下印象2013-01-01
Smartour 讓網(wǎng)頁(yè)導(dǎo)覽變得更簡(jiǎn)單(推薦)
這篇文章主要介紹了Smartour 讓網(wǎng)頁(yè)導(dǎo)覽變得更簡(jiǎn)單(推薦),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2019-07-07
使用mpvue搭建一個(gè)初始小程序及項(xiàng)目配置方法
這篇文章主要介紹了使用mpvue搭建一個(gè)初始小程序及項(xiàng)目配置方法,需要的朋友可以參考下2018-12-12
JS類(lèi)中定義原型方法的兩種實(shí)現(xiàn)的區(qū)別
JS類(lèi)中定義原型方法的兩種實(shí)現(xiàn)的區(qū)別...2007-03-03
使用JavaScript實(shí)現(xiàn)一個(gè)靜態(tài)鏈表
這篇文章主要為大家詳細(xì)介紹了如何使用JavaScript實(shí)現(xiàn)一個(gè)靜態(tài)鏈表,文中的示例代碼講解詳細(xì),具有一定的學(xué)習(xí)價(jià)值,感興趣的小伙伴可以跟隨小編一起了解一下2023-06-06
JavaScript中關(guān)于遞歸與回溯的實(shí)例詳解
這篇文章主要將為大家介紹一下JavaScript中遞歸與回溯的原理及使用,文中通過(guò)一些例題進(jìn)行了詳細(xì)介紹,感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下2022-07-07
JavaScript常見(jiàn)數(shù)組方法之如何轉(zhuǎn)置矩陣
這篇文章主要給大家介紹了關(guān)于JavaScript常見(jiàn)數(shù)組方法之如何轉(zhuǎn)置矩陣的相關(guān)資料,文中通過(guò)實(shí)例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2022-03-03
JS運(yùn)動(dòng)特效之同時(shí)運(yùn)動(dòng)實(shí)現(xiàn)方法分析
這篇文章主要介紹了JS運(yùn)動(dòng)特效之同時(shí)運(yùn)動(dòng)實(shí)現(xiàn)方法,結(jié)合實(shí)例形式分析了javascript同時(shí)運(yùn)動(dòng)的原理與相關(guān)實(shí)現(xiàn)技巧,需要的朋友可以參考下2018-01-01

