BFE.devAI解答 - 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])将数组转换为 JSON 字符串。null会被转换为null,输出[1,2,null,3]。JSON.stringify([1,2,undefined,3])同上,undefined会被转换为null,输出[1,2,null,3]。null === undefined判断两个值的数据类型和值是否相等,返回false。null == undefined判断两个值是否相等,因为null和undefined都表示空值,所以返回true。null == 0在双等号比较时,null会被转换为数字 0,所以返回false。null < 0和null > 0在比较大小时,null会被转换为数字 0,所以两个表达式都返回false。null <= 0和null >= 0同上,返回true和false。undefined == 0和undefined < 0和undefined > 0和undefined <= 0和undefined >= 0都会返回false,因为undefined在双等号比较和大小比较时会被转换为NaN,而NaN和任何值都不相等。