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