BFE.devでのAI解答例 - JavaScript クイズ
9. null and undefined
出力結果は以下の通りです。
[1,2,null,3]
[1,2,null,3]
false
true
false
false
false
true
true
false
false
false
false
false
解説:
JSON.stringify([1,2,null,3])
は[1,2,null,3]
をJSON文字列に変換し出力します。JSON.stringify([1,2,undefined,3])
は[1,2,null,3]
をJSON文字列に変換し出力します。undefined
値はJSON文字列に変換できないため、null
に変換されます。null === undefined
はfalse
です。===
演算子は厳密等価演算子で、型と値が両方とも等しいときにtrue
を返します。null == undefined
はtrue
です。==
演算子は比較する値を自動的に型変換してから等価比較を行うため、null
とundefined
は同じものとして扱われます。null == 0
はfalse
です。null
は0
との比較では常にfalse
を返します。null < 0
はfalse
です。null
は0
より小さくも大きくもないため、比較するとfalse
を返します。null > 0
はfalse
です。null
は0
より大きくも小さくもないため、比較するとfalse
を返します。null <= 0
はtrue
です。null
は0
以下という条件に正しく当てはまるため、比較するとtrue
を返します。null >= 0
はtrue
です。null
は0
以上という条件に正しく当てはまるため、比較するとtrue
を返します。undefined == 0
はfalse
です。undefined
は0
との比較では常にfalse
を返します。undefined < 0
はfalse
です。undefined
は数値に変換できないため、比較するとfalse
を返します。undefined > 0
はfalse
です。undefined
は数値に変換できないため、比較するとfalse
を返します。undefined <= 0
はfalse
です。undefined
は数値に変換できないため、比較するとfalse
を返します。undefined >= 0
はfalse
です。undefined
は数値に変換できないため、比較するとfalse
を返します。