在使用了一个并未声明的变量时,或者使用了已经声明但是没有赋值的变量时,又或者使用了一个并不存在的对象属性时,返回的就是这个值。 虽然undefined和null并不相同,但是==运算符却将两者看作是相等,如 my.prop == null 如果属性prop并不存在,或者它存在但是值为null,那么这个表达式的值为true。 当未定义的值用于布尔环境,它会转换为false,当它用于一个数字环境,它会转换为NaN,当它用户一个字符串环境,它会转换为"undefined"