执行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]'
阅读更多推荐使用上述方法,更加严谨!
相关文章推荐
- Struts2学习(四):Action执行的时候发生了什么
- Struts2学习(四):Action执行的时候发生了什么
- 当执行[object selector:para]的时候,发生了什么?
- 牛客网Java刷题知识点之什么是代码块、普通代码块、静态代码块、同步代码块、构造代码块以及执行顺序
- 当你输入一个网址的时候,实际会发生什么?
- GDI+中发生一般性错误 以及发布时候需要配置的文件
- Hadoop启动过程中执行start-all.sh,后台发生了什么
- 当你输入一个网址的时候,实际会发生什么? (转)
- Java Web基础知识之文件下载:当你下载文件的时候到底发生了什么?
- 当你输入一个网址的时候,究竟发生了什么?
- myeclipse 保存的时候都发生了什么
- 当你输入一个网址的时候,实际会发生什么?
- 当用GridView导出Execl的时候,会发生只能在执行 Render() 的过程中调用 RegisterForEventValidation的错误
- Android中onTouch方法的执行过程以及和onClick执行发生冲突的解决办法
- 当你访问淘宝的时候,发生了什么?
- 当你输入一个网址的时候,实际会发生什么?
- 当你访问淘宝的时候,发生了什么?
- 用户输入URL后发生了什么,以及优化问题
- SpringMVC interceptor有时候配置的时候path="/**" 两个星号什么意思,与path="/"以及path="/*"什么区别
- 当你输入一个网址的时候,实际会发生什么?