1、首先通过typeof判断是否为复杂类型,如果是再用instanceof来进行判断
2、使用class 来定义自己的数据类型
function isComplex(data) {
if (data && (typeof data === 'object' || typeof data === 'function')) {
return true;
}
return false;
}
//定义自己的数据类型
class PrimitiveString{
static [Symbol.hasInstance](data){
return typeof data === 'string'
}
}
class PrimitiveNum{
static [Symbol.hasInstance](data){
return typeof data === 'Number'
}
}
//测试
let num = '2'
console.log(num instanceof PrimitiveString) //true
console.log(isComplex(num)) // false