JavaScript是區分大小寫的:
關鍵字、變數、函數名稱、和所有的識別字都必須採用一致的大小寫(一般我們都是寫成小寫的),這樣和當初學C#的多樣式寫法有很大的差別。
例如:(這裡以變數str和Str為例)
var str='abc';alert(str);//輸出abc
假如str與Str為同一變量,則alert(str);,輸出的結果應為為ABC而非如上圖所示abc。這正好說明:JavaScript是區分大小寫的。
Unicode轉義序列
alert(Str ' ' str);// 可以看出顯示都是一樣的效果。 alert (Str===str);//輸出true
但我們應該注意一點,Unicode是允許多種方法對同一字元進行編碼的,用上述的é轉義的例子來說明:
é:
alert(Str===str); //結果是一樣的,可它們的二進位編碼表示根本不一樣,所以輸出false
雖然顯示在文字編輯器上的結果是一樣的,可是它們的二進位編碼表示根本不一樣,而程式語言最終都會轉換為本地平台的電腦機械碼(二進位編碼),電腦只能透過對二進位編碼的比較才能得知結果,所以它們比較最終的結果只能是false
所以這正是「Unicode是允許多種方法對相同字元進行編碼的」最好的解釋,因為Unicode標準為所有字元定義了一個首選的編碼格式以便於將文字轉換成統一格式的Unicode轉義序列以適當比較
再次以é為例:
比較facé與café中的é是否相同? facé與café中的é都轉化為u00E9或都轉換為eu0301,才能比較facé與café中的é