charCodeAt() && Unicode && UTF-8

1、JavaScript String charCodeAt() Method

charCodeAt()方法返回一個字符串中指定下標字符的Unicode。第一個字符的下標為0,第二個字符下標為1,依此類推。

注意:可以使用charCodeAt()方法與字符串的length屬性返回字符串中的最后一個字符。最后一個字符-1,倒數(shù)第二個字符-2,依此類推。

語法:

string.charCodeAt(index)

index:必填,一個數(shù)字,代表想返回Unicode字符的下標。

返回值:數(shù)字,代表指定下標字符的Unicode。如果下標小于0或下標不存在,返回NaN。

2、HTML Unicode (UTF-8)

(1)the Unicode Consortium

The Unicode Consortium開發(fā)Unicode標準,他們的目標是使用他們的標準Unicode轉(zhuǎn)換模型(Standard Unicode Transformation Format,UTF)代替現(xiàn)存字符集。

Unicode標準很成功,應(yīng)用于HTML、XML、Java、JavaScript、E-mail、ASP、PHP等中,許多操作系統(tǒng)和所有的現(xiàn)代瀏覽器均支持Unicode標準。

(2)Unicode字符集

Unicode可被應(yīng)用于不同的字符集,目前廣泛應(yīng)用的編碼方式是UTF-8和UTF-16

字符集UTF-8:UTF-8中字符長度從1字節(jié)到4字節(jié)。UTF-8可以代表Unicode標準中的任何一個字符,并且它向后兼容ASCII,被用于e-mail和網(wǎng)站編碼。

字符集UTF-16:16-bit Unicode轉(zhuǎn)換形式是一個對Unicode的可變長度字符編碼,可以對全部Unicode庫中的字符進行編碼。UTF-16用于操作系統(tǒng)等,比如:微軟的Windows操作系統(tǒng),Java和.NET。

注意:Unicode中的前128個字符與ASCII碼中的字符一一對應(yīng),它們使用八位字節(jié)表示,與ASCII碼具有相同的二進制值。

(3)HTML5標準:Unicode UTF-8

由于ISO-8859字符集字符數(shù)量有限,并且在多語種情況下不兼容,Unicode Consortium推出了Unicode標準。Unicode標準涵蓋了世界上所有字符、標點和符號。Unicode運行、存儲、和轉(zhuǎn)換text文檔獨立于平臺和語言。

HTML-5中的默認字符集為UTF-8,如果HTML5網(wǎng)頁需要使用不同的字符集,需要使用meta charset做出說明。

(4)Unicode與UTF-8區(qū)別

Unicode是一個字符集,UTF-8是一種編碼方式。Unicode是一個用唯一十進制數(shù)(code points)表示的字符集,比如:A=65,B=66,C=67.

十進制數(shù)的集合代表一個字符串”hello”:104 101 108 108 111

編碼方式是這些數(shù)字如何轉(zhuǎn)換成二進制代碼存儲到計算機中。

UTF-8編碼,將“hello”存儲為:01101000 01100101 1101100 01101100 01101111

即:編碼方式將數(shù)字轉(zhuǎn)換為二進制,字符集將字符轉(zhuǎn)換為數(shù)字。

3、JavaScript String length Property返回字符串的長度,即字符的個數(shù),中文字也是一個字符。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容