摘要:編碼編碼只能編碼個字符,而中國漢子就有,這樣顯然不夠的,然后中國推出編碼,用了兩個字節來編碼。中國編碼用了,那其他國家呢于是為了統一,推出了編碼。編碼都是不涉及計算機存儲,傳輸的。避免上述情況的出現。對于補充平面的字符。
javaScript中的Unicode
其實編碼原理很簡單,在計算中并非直接存儲字符(英文、中文等),而是存儲這些字符對應的一個數字,這些字符在網絡傳輸的時候,也是傳輸字符對應的數字,編碼就是將字符轉化成相應的數字。
ASCII大學C語言入門課程最先學習的知識,它用了一個字節的7位表示一個字符,比如字符A的ASCII碼是65。ASCII碼只用了7個bit編碼,注定能編碼的字符很少,只有128個。
Unicode編碼ASCII編碼只能編碼128個字符,而中國漢子就有6000 +,這樣顯然不夠的,然后中國推出GBK 編碼,用了兩個字節來編碼。中國編碼用了GBK,那其他國家呢?于是為了統一,推出了Unicode編碼。在1991年推出了UCS統一編碼,實際應用的是USC-2,用了2個字節來編碼,能編碼65536個字符。JavsScript中的編碼就是用的這個編碼方式。
編碼都是不涉及計算機存儲,傳輸的。但是在遇到兩個字節編碼的字符的時候,有個系統是大端順序讀取,Windows就是這樣,而Mac上是按照小端順序讀取。如果沒有個轉化格式,那么就亂了,此時UTF(Unicode Transformation Format,簡稱為UTF)就產生了。因此,UTF-16使用了大端序(Big-Endian,簡寫為UTF-16 BE)、小端序(Little-Endian,簡寫為UTF-16 LE)以及BOM(byte order mark)的概念。避免上述情況的出現。
JavaScript中的編碼JavaScript剛創建出來的時候,只有USC-2編碼方式可選,所以就一只用了這個編碼方式。上文也提到USC-2一開始使用了兩個字節來編碼,能夠編碼65536個字符,從0x0 - 0xFFFF,這個也被稱為基本平面(BMP-—Basic Multilingual Plane)。但是后來發現這樣的Unicode編碼也是不夠用,擴展了其他補充平面,從0x010000 - 0x10FFFF,共16個。對于補充平面的字符。對于UTF-16編碼方式來說,在0x0 - 0xFFFF之間的編碼方式直接使用了2個字節,而補充平面使用了4個字節來編碼,其中前兩個字節范圍是0xD800 - 0xDBFF,后兩個字節范圍是0xDC00 - 0xDFFF。通過下面的方式完成映射:
H = Math.floor((c-0x10000) / 0x400)+0xD800 L = (c – 0x10000) % 0x400 + 0xDC00USC-2編碼的那些坑
var text = "
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/95138.html
摘要:通過進行編碼的字符集程序是使用字符集編寫的。這種情況下,我們必須就要通過程序將的字符串轉為編碼的字符串。英文占個字符,漢字占個字符然而,的編碼結構長度是根據某單個字符的大小來決定長度有多少。把英文字母轉為編碼。 通過javascript進行UTF-8編碼 javascript的字符集: javascript程序是使用Unicode字符集編寫的。Unicode是ASCII和Latin-...
摘要:概念是一種針對的可變長度字符編碼,又稱萬國碼。通過上面的介紹我們可以知道,是一種非常通用的可變長字符編碼方式。概念是字符編碼五層次模型的第三層字符編碼表,也稱為的一種實現方式。 概述 本文通過介紹Unicode編碼以及對應的兩種編碼方式UTF-8和UTF-16,讓讀者能夠了解關于字符串編碼的相關知識,同時能夠弄清楚Unicode和UTF-8和UTF-16之間的關系。 本文的主要內容為:...
摘要:二和之間的不同和都是的字符編碼方式。提示如果你喜歡閱讀關于的內部字符編碼,可以,這里更詳細解釋了實際的問題,以及提供了解決方法。 對于 JavaScript 使用的是 UCS-2 還是 UTF-16 這個問題,我找了很久,沒有發現一個權威的回答,我決定自己研究一下它。這個回答來自于你對 JavaScript 引擎或者對 JavaScript 語言的理解。 一、著名的 BMP(Basic...
摘要:受到這個的影響,中的字符操作函數某些情況無法返回正確的結果。的碼點,還有另外一種表示方法,稱為進制轉義序列。這與我們的認知有點不同,我們通常認為一個表情符號也是一個字符,長度為。而如果通過來判斷字符串長度顯然是不夠準確的。 大家對上一篇文章中提到的UCS編碼可能比較陌生。殊不知這就是JavaScript采用的編碼方法。 既然Unicode已經統一了天下,為什么JavaScript不采用...
閱讀 2744·2021-11-19 09:40
閱讀 5294·2021-09-27 14:10
閱讀 2099·2021-09-04 16:45
閱讀 1462·2021-07-25 21:37
閱讀 2994·2019-08-30 10:57
閱讀 2981·2019-08-28 17:59
閱讀 1055·2019-08-26 13:46
閱讀 1408·2019-08-26 13:27