首頁 > 軟體

js的一些潛在規則使用分析

2023-02-24 06:01:57

為什麼開發中建議使用void 0 來代替undefined

因為 JavaScript 的程式碼 undefined 是一個變數,而並非是一個關鍵字,這是JavaScript 語言公認的設計失誤之一,所以,我們為了避免無意中被篡改,我建議使用void 0 來獲取 undefined 值。

MDN上的解釋: undefined is a property of the global object. That is, it is a variable in global scope. The initial value of undefined is the primitive value undefined

為什麼開發中將未賦值的變數賦值為null,而不是undefined

null 表示的是:“定義了但是為空”。所以,在實際程式設計時,我們一般不會把變數賦值為 undefined,這樣可以保證所有值為 undefined 的變數,都是從未賦值的自然狀態。

String型別的長度

因為 String 的意義並非“字串”,而是字串的 UTF16 編碼,我們字串的操作charAt、charCodeAt、length 等方法針對的都是 UTF16 編碼。所以,字串的最大長度,實際上是受字串的編碼長度影響的。

JavaScript 中的字串是永遠無法變更的,一旦字串構造出來,無法用任何方式改變字串的內容,所以字串具有值型別的特徵。

JavaScript 字串把每個 UTF16 單元當作一個字元來處理,所以處理非 BMP(超出U+0000 - U+FFFF 範圍)的字元時,你應該格外小心。

"uD835uDD46" // "

IT145.com E-mail:sddin#qq.com