JavaScript中instanceof运算符的使用示例


Posted in Javascript onJune 08, 2016

instanceof运算符可以用来判断某个构造函数的prototype属性是否存在另外一个要检测对象的原型链上。

实例一:普遍用法

A instanceof B :检测B.prototype是否存在于参数A的原型链上.

function Ben() {

}
var ben = new Ben();
console.log(ben instanceof Ben);//true

实例二:继承中判断实例是否属于它的父类

function Ben_parent() {}

function Ben_son() {}

Ben_son.prototype = new Ben_parent();//原型继承

var ben_son = new Ben_son();

console.log(ben_son instanceof Ben_son);//true

console.log(ben_son instanceof Ben_parent);//true

实例三:表明String对象和Date对象都属于Object类型

下面的代码使用了instanceof来证明:String和Date对象同时也属于Object类型。

var simpleStr = "This is a simple string"; 
var myString = new String();
var newStr  = new String("String created with constructor");
var myDate  = new Date();
var myObj   = {};

simpleStr instanceof String; // returns false, 检查原型链会找到 undefined
myString instanceof String; // returns true
newStr  instanceof String; // returns true
myString instanceof Object; // returns true

myObj instanceof Object;  // returns true, despite an undefined prototype
({}) instanceof Object;  // returns true, 同上

myString instanceof Date;  // returns false

myDate instanceof Date;   // returns true
myDate instanceof Object;  // returns true
myDate instanceof String;  // returns false

实例四:演示mycar属于Car类型的同时又属于Object类型

下面的代码创建了一个类型Car,以及该类型的对象实例mycar. instanceof运算符表明了这个mycar对象既属于Car类型,又属于Object类型。

function Car(make, model, year) {
 this.make = make;
 this.model = model;
 this.year = year;
}
var mycar = new Car("Honda", "Accord", 1998);
var a = mycar instanceof Car;  // 返回 true
var b = mycar instanceof Object; // 返回 true
Javascript 相关文章推荐
javascript function、指针及内置对象
Feb 19 Javascript
node.js中的path.resolve方法使用说明
Dec 08 Javascript
jQuery获取DOM节点实例分析(2种方式)
Dec 15 Javascript
jQuery插件实现文件上传功能(支持拖拽)
Aug 27 Javascript
jQuery实现鼠标经过购物车出现下拉框代码(推荐)
Jul 21 Javascript
js记录点击某个按钮的次数-刷新次数为初始状态的实例
Feb 15 Javascript
基于JQuery和原生JavaScript实现网页定位导航特效
Apr 03 jQuery
在Vue中获取组件声明时的name属性方法
Sep 12 Javascript
vue中设置、获取、删除cookie的方法
Sep 21 Javascript
小程序如何支持使用 async/await详解
Sep 12 Javascript
基于vuex实现购物车功能
Jan 10 Vue.js
类和原型的设计模式之复制与委托差异
Jul 07 Javascript
实例讲解JavaScript中instanceof运算符的用法
Jun 08 #Javascript
js获取对象、数组的实际长度,元素实际个数的实现代码
Jun 08 #Javascript
JS & JQuery 动态添加 select option
Jun 08 #Javascript
Jquery ajax请求导出Excel表格的实现代码
Jun 08 #Javascript
浅谈几种常用的JS类定义方法
Jun 08 #Javascript
浅谈javascript中的constructor
Jun 08 #Javascript
js定义类的几种方法(推荐)
Jun 08 #Javascript
You might like
提升PHP执行速度全攻略(上)
2006/10/09 PHP
Discuz!下Memcache缓存实现方法
2010/05/28 PHP
php实现快速排序的三种方法分享
2014/03/12 PHP
跟我学Laravel之视图 & Response
2014/10/15 PHP
Laravel ORM 数据model操作教程
2019/10/21 PHP
jQuery与ExtJS之选择实例分析
2010/08/19 Javascript
js 字符串转化成数字的代码
2011/06/29 Javascript
js 加密压缩出现bug解决方案
2014/11/25 Javascript
jQuery获取radio选中项的值实例
2016/06/18 Javascript
ES6学习教程之块级作用域详解
2017/10/09 Javascript
js断点调试心得分享(必看篇)
2017/12/08 Javascript
微信小程序修改swiper默认指示器样式的实例代码
2018/07/18 Javascript
生产制造追溯系统之在线打印功能
2019/06/03 Javascript
Vue路由模块化配置的完整步骤
2019/08/14 Javascript
[01:24:09]Ti4 冒泡赛第二轮DK vs C9 1
2014/07/14 DOTA
Python3中使用urllib的方法详解(header,代理,超时,认证,异常处理)
2016/09/21 Python
linux环境下的python安装过程图解(含setuptools)
2017/11/22 Python
在scrapy中使用phantomJS实现异步爬取的方法
2018/12/17 Python
网易有道2017内推编程题 洗牌(python)
2019/06/19 Python
Python Numpy数组扩展repeat和tile使用实例解析
2019/12/09 Python
python socket通信编程实现文件上传代码实例
2019/12/14 Python
关于ResNeXt网络的pytorch实现
2020/01/14 Python
opencv python 图片读取与显示图片窗口未响应问题的解决
2020/04/24 Python
Django自关联实现多级联动查询实例
2020/05/19 Python
没编程基础可以学python吗
2020/06/17 Python
Python 数据分析之逐块读取文本的实现
2020/12/14 Python
python中xlrd模块的使用详解
2021/02/01 Python
TUMI澳大利亚网站:美国旅行箱包品牌
2017/03/27 全球购物
Weblogic的布署方式
2013/08/23 面试题
外贸员简历中的自我评价
2014/03/04 职场文书
中国好声音广告词
2014/03/18 职场文书
公司员工安全协议书
2014/11/21 职场文书
超强台风观后感
2015/06/09 职场文书
体育教师教学随笔
2015/08/15 职场文书
班主任寄语2016
2015/12/04 职场文书
珍惜时间的诗歌赏析
2019/08/23 职场文书