JavaScript —— 常用数据类型隐式转换

公用方法:

let checkType = (data) => {
    if(data){
        console.log(true);
    }else{
        console.log(false);
    }
}

一、字符串

checkType('hello~');   // true
checkType('');   // false

总结:

空字符串会被转换为 false,非空字符串会被转换为 true。

二、数值

checkType(10);   // true
checkType(10.5);   // true
checkType(-10.5);   // true
checkType(0);   // false

总结:

非0数值会被转换为 true,0会被转换为 false。

三、数组

checkType([]);   // true
checkType(['tome', 'alice', 'jack'])   // true

总结:

数组都会被转换为 true,如果想让空数组返回false怎么办呢?可以利用数组的 length属性,如下:

checkType([].length);   // false
checkType(['tome', 'alice', 'jack'].length)   // true

四、对象

checkType({});   // true
checkType({userId: 1001, userName: 'jack', age: 26});   // true

总结:

对象都会被转换为 true,如果想让空空对象返回false怎么办呢?可以利用数组的 length属性,如下:

checkType(Object.keys({}).length);   // false
checkType(Object.keys({userId: 1001, userName: 'jack', age: 26}).length);   // true
原文地址:https://www.cnblogs.com/xulinjun/p/12015728.html