null,undefined,true,false,以及== 和===
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了null,undefined,true,false,以及== 和===相关的知识,希望对你有一定的参考价值。
undefined是未定义,在变量没有赋值的时候的值即为undefined。"缺少值",就是此处应该有一个值,但是还没有定义。
underclared即为被污染的命名,访问没有被声明的变量,会抛出异常,终止执行。
null是一个空的对象引用。"没有对象",即该处不应该有值
undefined和null在 if 语句中,都会被自动转为false,相等运算符甚至直接报告两者相等。typeof undefined会返回undefined ,而typeof null 总返回 object (typeof有六种可能:"number"、"string"、"boolean"、"object"、"function"、"undefined")
false == undefined;//false false == null;//false null == undefined;//true
( window.foo || ( window.foo = "bar" ) );
问题:window.foo的值是多少?关于“||” 的运算5-15随笔已记录。如果window.foo是false,则window.foo=‘bar‘;这里的window.foo相当于全局变量,但是未定义,为undefined,实际||前为if判断,undefined自动转为false;
以上是关于null,undefined,true,false,以及== 和===的主要内容,如果未能解决你的问题,请参考以下文章
在js中if条件为null/undefined/0/NaN/""表达式时,统统被解释为false,此外均为true
在js中if条件为null/undefined/0/NaN/""表达式时,统统被解释为false,此外均为true哦。。。(官方原文如下:)