###### tags: `六角JS 直播班 - 2021 秋季班` undefined 與 null 的差異 === ## undefined - 變數若未被宣告,或宣告了但未被賦予值,預設為undefined - undefined 的型別(typeof)為undefined ```javascript= let a; console.log(a) //undefined ``` ## null - 變數必須經過宣告並賦予null,宣告空值用的 - null 的型別(typeof)為 object ```javascript= let a = null; console.log(a) //null ``` ## undefined 與 null 的共通點 - 皆為基本型別 - 皆為falsy value - 補充:falsy value包含: - “ ” 空字串 - 0 - undefined - null 空值 - NaN 非數字 ## 特別注意! ```javascript= null == undefined //true null === undefined //false ``` 一律使用===,可以更確實判斷型別,避免 null, undefined 被強制轉型。 <br> >參考資料 >[Null & undefined 型態差異 - Node.js day 7](https://ithelp.ithome.com.tw/articles/10103799)