undefined、null、空数组、空对象是true还是false

undefined、null、空数组、空对象是true还是false

1、空对象不是true也不是false(对象没有实例化)

//直接判断
if({
    
    }){
    
    console.log(11)}else{
    
    console.log(122)}//11
if(!{
    
    }){
    
    console.log(11)}else{
    
    console.log(122)}//122

//跟布尔值比较
if({
    
    }==true){
    
    console.log(11)}else{
    
    console.log(122)}//122
if({
    
    }==false){
    
    console.log(11)}else{
    
    console.log(122)}//122

if({
    
    }==null){
    
    console.log(11)}else{
    
    console.log(122)}//122
if({
    
    }==undefined){
    
    console.log(11)}else{
    
    console.log(122)}//122

if(!{
    
    }==true){
    
    console.log(11)}else{
    
    console.log(122)}//122
if(!{
    
    }==false){
    
    console.log(11)}else{
    
    console.log(122)}//11
if(!{
    
    }==null){
    
    console.log(11)}else{
    
    console.log(122)}//122

2、空数组作为判断条件时相当于true,空数组和布尔值直接比较时相当于false

//直接判断
if([]){
    
    console.log(11)}else{
    
    console.log(122)}//11
if(![]){
    
    console.log(11)}else{
    
    console.log(122)}//122

//跟布尔值比较
if([]==true){
    
    console.log(11)}else{
    
    console.log(122)}//122
if([]==false){
    
    console.log(11)}else{
    
    console.log(122)}//11

if([]==null){
    
    console.log(11)}else{
    
    console.log(122)}//122
if([]==undefined){
    
    console.log(11)}else{
    
    console.log(122)}//122

3、undefined作为判断条件时相当于false,undefined和布尔值直接比较时不是true也不是false

if(undefined){
    
    console.log(11)}else{
    
    console.log(122)}//122
if(undefined==true){
    
    console.log(11)}else{
    
    console.log(122)}//122
if(undefined==false){
    
    console.log(11)}else{
    
    console.log(122)}//122
if(!undefined==true){
    
    console.log(11)}else{
    
    console.log(122)}//11
if(undefined==null){
    
    console.log(11)}else{
    
    console.log(122)}//11

4、null作为判断条件时相当于false,null和布尔值直接比较时不是true也不是false

if(null){
    
    console.log(11)}else{
    
    console.log(122)}//122
if(null==true){
    
    console.log(11)}else{
    
    console.log(122)}//122
if(null==false){
    
    console.log(11)}else{
    
    console.log(122)}//122
if(null==undefined){
    
    console.log(11)}else{
    
    console.log(122)}//11
if(!null==true){
    
    console.log(11)}else{
    
    console.log(122)}//11

猜你喜欢

转载自blog.csdn.net/zzzz121380/article/details/127223249