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ù),中文字也是一個字符。