判断数据类型

判断数据类型的方法有很多,ypeof,instanceof 等。今天我们主要将Object.prototype.toString.call()进行数据类型的判断。该方法可以说是最准确最全面的判断数据类型的方法。(当然他也还是有不能判断自定义对象的问题存在的)
//使用柯里化函数的方法
function isType(type) {
    return function(val) {
        console.log(Object.prototype.toString.call(val))
        return `[object ${type}]` === Object.prototype.toString.call(val)
    }
}
//创建一个判断输入类型的方法
//(注意传入 type 参数时首字母大写)
let isArr = isType('Null')
//使用方法
console.log(isArr(null))
// true
console.log(isArr([]))
// false

也可以将上面的函数扁平化处理

function isType(type, val) {
    return `[object ${type}]` === Object.prototype.toString.call(val)
}
console.log(isType('Null', null))  //true
console.log(isType('Array', []))  //true

甚至于可以简写为一行代码

const isType = (type, val) =>  `[object ${type}]` === Object.prototype.toString.call(val)
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容