instanceof和typeof运算符的区别详解


Posted in Javascript onJanuary 06, 2014

一.instanceof运算符:
此运算符可以判断一个变量是否是某个对象(类)的实例,返回值是布尔类型的。
想要理解它的作用,必须对面向对象有所理解:

代码实例如下:

var str=new String("antzone");  
console.log(str instanceof String);

以上代码会输出true,因为str是对象String的对象实例。
一般说来只有使用构造函数创建的对象才会返回true,否则返回false,不过数组是一个例外,都会返回true。

二.typeof运算符:
此运算符可以返回一个字符串,用语说明元算数的类型,它的返回值有如下可能:

number,boolean,string,function,object,undefined

先看一段代码实例:

var str=new String("antzone"); 
var strTwo="antzone";  
console.log(typeof str); 
console.log(typeof strTwo);

在以上代码中,第一个可以输出准确的类型"string",第二个确是"object",并不精准。
一般来说使用typeof的操作是直接量形式的话能够返回准确的结果,如果是使用构造函数创建的对象则会返回"object",不过对于数组来说是个例外,无论是否是直接量都会返回"object"。

Javascript 相关文章推荐
JS完整获取IE浏览器信息包括类型、版本、语言等等
May 22 Javascript
Javascript中this关键字的一些小知识
Mar 15 Javascript
Angularjs制作简单的路由功能demo
Apr 14 Javascript
js实现简易的单数字随机抽奖(0-9)
Mar 19 Javascript
全面解析Bootstrap中transition、affix的使用方法
May 30 Javascript
浅谈es6语法 (Proxy和Reflect的对比)
Oct 24 Javascript
swiper移动端轮播插件(触碰图片之后停止轮播)
Dec 28 Javascript
解决Vue不能检测数组或对象变动的问题
Feb 24 Javascript
解决vue 打包发布去#和页面空白的问题
Sep 04 Javascript
vue 2.8.2版本配置刚进入时候的默认页面方法
Sep 21 Javascript
微信小程序当前时间时段选择器插件使用方法详解
Dec 28 Javascript
egg.js的基本使用和调用数据库的方法示例
May 18 Javascript
jquery使用append(content)方法注意事项分享
Jan 06 #Javascript
javascript客户端遍历控件与获取父容器对象示例代码
Jan 06 #Javascript
Javascript 遍历页面text控件详解
Jan 06 #Javascript
jquery链式操作的正确使用方法
Jan 06 #Javascript
jquery设置text的值示例(设置文本框 DIV 表单值)
Jan 06 #Javascript
jquery修改属性值实例代码(设置属性值)
Jan 06 #Javascript
js定时器的使用(实例讲解)
Jan 06 #Javascript
You might like
用PHP调用数据库的存贮过程
2006/10/09 PHP
PHP备份数据库生成SQL文件并下载的函数代码
2012/02/05 PHP
PHP生成迅雷、快车、旋风等软件的下载链接代码实例
2014/05/12 PHP
JavaScript 常用函数库详解
2009/10/21 Javascript
使用JavaScript库还是自己写代码?
2010/01/28 Javascript
关于IE浏览器以及Firefox下的javascript冒泡事件的响应层级
2010/10/14 Javascript
简单实用的js调试logger组件实现代码
2010/11/20 Javascript
枚举的实现求得1-1000所有出现1的数字并计算出现1的个数
2013/09/10 Javascript
Javascript 数组排序详解
2014/10/22 Javascript
scrollWidth,clientWidth,offsetWidth的区别
2015/01/13 Javascript
JavaScript的jQuery库插件的简要开发指南
2015/08/12 Javascript
js轮盘抽奖实例分析
2020/04/17 Javascript
nodejs个人博客开发第一步 准备工作
2017/04/12 NodeJs
深入浅出es6模板字符串
2017/08/26 Javascript
前端把html表格生成为excel表格的实例
2017/09/19 Javascript
Vue头像处理方案小结
2018/07/26 Javascript
JS计算斐波拉切代码实例
2019/09/12 Javascript
使用vue实现HTML页面生成图片的方法
2020/03/12 Javascript
javascript实现评分功能
2020/06/24 Javascript
[01:13]这,就是刀塔
2014/07/16 DOTA
Python的Flask框架中实现登录用户的个人资料和头像的教程
2015/04/20 Python
基于Python闭包及其作用域详解
2017/08/28 Python
python+opencv实现动态物体识别
2018/01/09 Python
python模糊图片过滤的方法
2018/12/14 Python
python 通过手机号识别出对应的微信性别(实例代码)
2019/12/22 Python
Python文件操作函数用法实例详解
2019/12/24 Python
pytorch中tensor张量数据类型的转化方式
2019/12/31 Python
如何使用python的ctypes调用医保中心的dll动态库下载医保中心的账单
2020/05/24 Python
建筑工程自我鉴定
2013/10/18 职场文书
七一讲话心得体会
2014/09/05 职场文书
副校长个人对照检查材料思想汇报
2014/10/04 职场文书
创先争优宣传标语
2014/10/08 职场文书
活动经费申请报告
2015/05/15 职场文书
创业计划书之健康营养产业
2019/10/15 职场文书
HTML速写之Emmet语法规则的实现
2021/04/07 HTML / CSS
python如何做代码性能分析
2021/04/26 Python