js--typeof/instanceof

都可以用来检测类型

对于基本类型的检测可以用typeof检测

但是通常情况下我们不仅仅想要知道它不仅是对象还要知道它是什么类型的对象,比如是数组(Array)、函数(Function)、日期(Date)、Object、正则表达式(RegExp)、字符串(String)对象等对象

所以对于引用类型的检测则应该用instanceof检测(返回的是bool值)

对于基本类型的检测,用instanceof 检测则会出现问题。

var box ="ww";alert(box instanceof String);//返回false

解决办法:把基本类型用new运算符转换成对象

var box =new String("ww");alert(box instanceof String); //采用String对象形式,返回true

 var box ="ww";alert(typeof box);//返回string的基本类型

不同:写法不同,返回值不同,检测侧重点不同。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 第一章: JS简介 从当初简单的语言,变成了现在能够处理复杂计算和交互,拥有闭包、匿名函数, 甚至元编程等...
    LaBaby_阅读 1,703评论 0 6
  • 第三章 基本概念 3.1 语法 ECMAScript标识符一般采用驼峰大小写格式,也就是第一个字母小写,剩下的每个...
    小雄子阅读 588评论 0 1
  • 第5章 引用类型(返回首页) 本章内容 使用对象 创建并操作数组 理解基本的JavaScript类型 使用基本类型...
    大学一百阅读 3,272评论 0 4
  • ECMAScript关键字 delete do else finally function in instance...
    doudou2阅读 731评论 0 0
  • 1.基本类型和引用类型的值 ECMAScript 变量可能包含两种不同的数据类型的值:基本类型值和引用类型值。基本...
    浅唱南山忆阅读 414评论 0 0