Javascript 中文字符串處理額外注意事項
更新時間:2009年11月15日 01:29:22 作者:
javascript文件中的字符常量與所在的js文件字符編碼密切相關(guān),如下一段代碼
var strSex="男" ;
在GB2312編碼中,假設(shè)有另一變量strAxSex是從ActiveX控件中讀出的BSTR值,原始值也是"男" ,這時做在javascript程序中做比較:strSex==strAxSex為false,也就是"男"!="男"。
但如果從VS2005調(diào)試中看表達(dá)式 strSex==strAxSex則為true,細(xì)看strSex.charCodeAt(0)與strAxSex.charCodeAt(0)也是相等的,而strSex.charCodeAt(0)與strAxSex.charCodeAt(0)也相等都為NaN。
再注意看vs2005變量值提示,可以看到strSex="□□“。原來是字符常量非unicode,導(dǎo)致strSex所賦值不同于"男"的unicode值。嘗試把js文件另存為編碼utf-8,再次運(yùn)行,終于 strSex==strAxSex為true,程序運(yùn)行與調(diào)試器表現(xiàn)一致,和日常邏輯也一致了。
在GB2312編碼中,假設(shè)有另一變量strAxSex是從ActiveX控件中讀出的BSTR值,原始值也是"男" ,這時做在javascript程序中做比較:strSex==strAxSex為false,也就是"男"!="男"。
但如果從VS2005調(diào)試中看表達(dá)式 strSex==strAxSex則為true,細(xì)看strSex.charCodeAt(0)與strAxSex.charCodeAt(0)也是相等的,而strSex.charCodeAt(0)與strAxSex.charCodeAt(0)也相等都為NaN。
再注意看vs2005變量值提示,可以看到strSex="□□“。原來是字符常量非unicode,導(dǎo)致strSex所賦值不同于"男"的unicode值。嘗試把js文件另存為編碼utf-8,再次運(yùn)行,終于 strSex==strAxSex為true,程序運(yùn)行與調(diào)試器表現(xiàn)一致,和日常邏輯也一致了。
您可能感興趣的文章:
相關(guān)文章
setTimeout函數(shù)兼容各主流瀏覽器運(yùn)行執(zhí)行效果實例
setTimeout是一個很不錯的函數(shù),網(wǎng)站頁面前端工程師經(jīng)常將其用于幾秒后執(zhí)行的動作,下文要講的setTimeout可以很好地兼容IE6,7,8,9以及谷歌等主流瀏覽器2013-06-06微信小程序?qū)崿F(xiàn)天氣預(yù)報功能(附源碼)
這篇文章主要介紹了微信小程序?qū)崿F(xiàn)天氣預(yù)報功能(附源碼),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-12-12ECHO.js 純javascript輕量級延遲加載的實例代碼
下面小編就為大家?guī)硪黄狤CHO.js 純javascript輕量級延遲加載的實例代碼。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2016-05-05JS數(shù)據(jù)結(jié)構(gòu)與算法中的隊列結(jié)構(gòu)詳解
隊列指的是一種受限的線性表,先進(jìn)先出,今天通過本文帶領(lǐng)大家認(rèn)識隊列及隊列的應(yīng)用,對JS數(shù)據(jù)結(jié)構(gòu)與算法-隊列結(jié)構(gòu)相關(guān)知識感興趣的朋友一起看看吧2022-11-11JavaScript動態(tài)添加css樣式和script標(biāo)簽
這篇文章主要介紹了JavaScript動態(tài)添加css樣式和script標(biāo)簽的相關(guān)資料,非常不錯,具有參考借鑒價值,需要的朋友可以參考下2016-07-07javascript XML數(shù)據(jù)顯示為HTML一例
通過Javascript把xml轉(zhuǎn)換成html格式輸出一列2008-12-12JS基于正則表達(dá)式實現(xiàn)的密碼強(qiáng)度驗證功能示例
這篇文章主要介紹了JS基于正則表達(dá)式實現(xiàn)的密碼強(qiáng)度驗證功能,涉及javascript事件響應(yīng)及基于正則的字符遍歷、判斷等相關(guān)操作技巧,需要的朋友可以參考下2017-09-09JS實現(xiàn)橫向與豎向兩個選項卡Tab聯(lián)動的方法
這篇文章主要介紹了JS實現(xiàn)橫向與豎向兩個選項卡Tab聯(lián)動的方法,涉及JavaScript遍歷及動態(tài)修改頁面元素屬性的相關(guān)技巧,具有一定參考借鑒價值,需要的朋友可以參考下2015-09-09