您的位置:首页 > 其它

执行instanceof的时候发生了什么,以及局限性!

2018-09-28 15:49 260 查看

执行instanceof的时候发生了什么!

console.log('**********1')
console.log([] instanceof Object)let a = []
console.log(a instanceof Array)
Array = {
[Symbol.hasInstance](obj) {
return false
}
}
console.log('**********')
console.log(a instanceof Array)

其实是调用了 [Symbol.hasInstance]方法

局限性

console.log([] instanceof Object)

其实可以看出来,instanceof 判断是不严谨的。

Object.prototype.toString.call(data) === '[object Array]'

推荐使用上述方法,更加严谨!

阅读更多
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: