我在閱讀ECMAScript Specification 5th edition,但有一點我認爲它不是很清楚。ECMAScript 5.1中的源代碼字符
在第6節 - 源文本規範聲明源字符如下:
SourceCharacter::
any Unicode code unit
和它說後:
整個文檔中,短語「代碼單元」的其餘部分而「字符」這個詞將用來表示一個16位無符號值,用來表示一個16位單位的文本。短語「Unicode字符」將用於指代由單個Unicode標量值(其可能超過16位並且因此可以由多於一個代碼單元表示)所表示的抽象語言或印刷單元。
我認爲,這句話是有點曖昧,因爲有人(如我最初)可以認爲,只允許字符是Unicode的表0-65535之間。
那麼,句子是否含糊或只能使用0-65536之間的字符呢?
好問題。正如您所知,原始的JavaScript Unicode支持基本上已被破壞,因爲它基於UTF-16是固定大小編碼的錯誤假設。我聽說有一些改進,但所有事情都需要向後兼容。 –