Why does “undefined equals false” return false?

后端 未结 7 1155
借酒劲吻你
借酒劲吻你 2020-11-30 06:28

When I compare undefined and null against Boolean false, the statement returns false:

undefined == false;
null == false;

It return false. W

7条回答
  •  情话喂你
    2020-11-30 07:02

    Undefined is not the same thing as false, false is a boolean object (which has a value of 0 therefore it is indeed defined).

    An example:

    var my_var;
    var defined = (my_var === undefined)
    alert(defined);  //prints true.  It is true that my_var is undefined
    
    my_var = 22;
    defined = (my_var === undefined)
    alert(defined);  //prints false.  my_var is now defined
    
    defined = (false === undefined)
    alert(defined);  //prints false, false is defined
    
    defined = (true === undefined)
    alert(defined);  //prints false, true is defined
    

提交回复
热议问题