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 相关文章推荐
Prototype中dom对象方法汇总
Sep 17 Javascript
FF IE兼容性的修改小结
Sep 02 Javascript
extjs 04_grid 单击事件新发现
Nov 27 Javascript
网页前端优化之滚动延时加载图片示例
Jul 13 Javascript
jQuery 中$(this).index与$.each的使用指南
Nov 20 Javascript
详解VUE的状态控制与延时加载刷新
Mar 27 Javascript
Vue 组件间的样式冲突污染
Aug 31 Javascript
在React 组件中使用Echarts的示例代码
Nov 08 Javascript
Vue事件修饰符native、self示例详解
Jul 09 Javascript
Vue中this.$nextTick的作用及用法
Feb 04 Javascript
基于Vue sessionStorage实现保留搜索框搜索内容
Jun 01 Javascript
js实现简单抽奖功能
Nov 24 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与MySQL交互使用详解
2006/10/09 PHP
header导出Excel应用示例
2014/01/24 PHP
PHP学习笔记之字符串编码的转换和判断
2014/05/22 PHP
php 可变函数使用小结
2018/06/12 PHP
php ajax confirm 删除实例详解
2019/03/06 PHP
基于jquery的实现简单的表格中增加或删除下一行
2010/08/01 Javascript
JQGrid的用法解析(列编辑,添加行,删除行)
2013/11/08 Javascript
jquery自动切换tabs选项卡的具体实现
2013/12/24 Javascript
document.addEventListener使用介绍
2014/03/07 Javascript
javascript 继承学习心得总结
2016/03/17 Javascript
JavaScript中setter和getter方法介绍
2016/07/11 Javascript
Angular 路由route实例代码
2016/07/12 Javascript
jQuery中的deferred使用方法
2017/03/27 jQuery
使用D3.js创建物流地图的示例代码
2018/01/27 Javascript
JS改变页面颜色源码分享
2018/02/24 Javascript
简单的vuex 的使用案例笔记
2018/04/13 Javascript
Node.js中的cluster模块深入解读
2018/06/11 Javascript
Redux实现组合计数器的示例代码
2018/07/04 Javascript
Vue+element-ui 实现表格的分页功能示例
2018/08/18 Javascript
Vue props中Object和Array设置默认值操作
2020/07/30 Javascript
ssh批量登录并执行命令的python实现代码
2012/05/25 Python
python在不同层级目录import模块的方法
2016/01/31 Python
python搭建虚拟环境的步骤详解
2016/09/27 Python
Python执行时间的计算方法小结
2017/03/17 Python
python验证码识别教程之利用滴水算法分割图片
2018/06/05 Python
Django objects的查询结果转化为json的三种方式的方法
2018/11/07 Python
python日志logging模块使用方法分析
2019/05/23 Python
anaconda如何查看并管理python环境
2019/07/05 Python
python画图——实现在图上标注上具体数值的方法
2019/07/08 Python
详解如何修改jupyter notebook的默认目录和默认浏览器
2021/01/24 Python
python爬虫用request库处理cookie的实例讲解
2021/02/20 Python
使用CSS实现阅读进度条
2017/02/27 HTML / CSS
金额转换,阿拉伯数字的金额转换成中国传统的形式如:(¥1011)-> (一千零一拾一元整)输出
2015/05/29 面试题
校园活动宣传方案
2014/03/28 职场文书
夏季药店促销方案
2014/08/22 职场文书
法定授权委托证明书
2014/09/27 职场文书