1.最初設計
- null為空的對象,轉化為數值為0
- undefined表示原始值,轉化為數值為NaN
2.目前的用法
- null表示沒有對象,即該處不應該有值
- 最為函數的參數,表示函數的參數不為對象
- 作為對象原型鏈的終點
- undefined表示缺少值,此處應該有一個值,但是還沒有定義
- 變量被聲明了,但是沒有賦值時,就等于undefined
- 調用函數時,應該提供的參數沒有提供,則該參數等于undefined
- 對象沒有賦值的屬性,該屬性的值為undefined
- 函數沒有返回值時,默認返回undefined