変数が宣言され、未定義および null に設定されているさまざまなコード例を見てきました。そのような:
var a; // undefined - unintentional value, object of type 'undefined'
var b = null; // null - deliberate non-value, object of type 'object'
これらの宣言に従うコードが a または b に値を代入する場合、あるタイプの宣言を別のタイプよりも優先して使用する理由は何ですか?