1. Belegt ?a“ in JS 2 Bytes oder 1 Byte im Speicher? JS ist in UCS-2 codiert, sollte also 2 Bytes belegen, oder?
2. Sind JS-Strings in verschiedenen Engines gleich codiert?
3. Wie stellt eine Zeichenfolge in JS das ?Ende“ im Speicher dar?
我來回答一下我知道的:
1) a字母(英語第一個小寫的那個)占用兩個字節(jié),JS用的為UCS-2,不過后來又兼容了UTF16.
但是有一些生僻字就不一定為 2 個字節(jié)長度了,可能是多個。相關(guān)知識可以找一下 阮一峰的 字符串知識講解,也建議看
一下維基的相關(guān)條目并參閱其底下的參考鏈接(主要是標準化組織的文檔).
2) 編碼是ECMA規(guī)定的,都是一樣的,作為腳本語言,他的編碼都是被ECMA這份文檔所確定了。
3) 這個和引擎相關(guān)。
可以參考這個問題的回復(fù)
https://www.zhihu.com/questio...