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 相关文章推荐
禁止js文件缓存的代码
Apr 09 Javascript
js 全兼容可高亮二级缓冲折叠菜单
Jun 04 Javascript
读jQuery之六 缓存数据功能介绍
Jun 21 Javascript
JS控件ASP.NET的treeview控件全选或者取消(示例代码)
Dec 16 Javascript
js实现的Easy Tabs选项卡用法实例
Sep 06 Javascript
使用jQuery mobile库检测url绝对地址和相对地址的方法
Dec 04 Javascript
VUEJS实战之修复错误并且美化时间(2)
Jun 13 Javascript
JS身份证信息验证正则表达式
Jun 12 Javascript
jQuery实现浏览器之间跳转并传递参数功能【支持中文字符】
Mar 28 jQuery
Vue通过for循环随机生成不同的颜色或随机数的实例
Nov 09 Javascript
vue element 中的table动态渲染实现(动态表头)
Nov 21 Javascript
关于引入vue.js 文件的知识点总结
Jan 28 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
第十四节 命名空间 [14]
2006/10/09 PHP
解析PHP SPL标准库的用法(遍历目录,查找固定条件的文件)
2013/06/18 PHP
PHP生成图片验证码、点击切换实例
2014/06/25 PHP
destoon数据库表说明汇总
2014/07/15 PHP
实现PHP框架系列文章(6)mysql数据库方法
2016/03/04 PHP
jQuery基本过滤选择器使用介绍
2013/04/18 Javascript
通过JS来判断页面控件是否获取焦点
2014/01/03 Javascript
jquery实现的下拉和收缩效果示例
2014/08/21 Javascript
关于Javascript中document.cookie的使用
2017/03/08 Javascript
vue 项目中当访问路由不存在的时候默认访问404页面操作
2020/08/31 Javascript
Vue使用Element实现增删改查+打包的步骤
2020/11/25 Vue.js
[02:28]DOTA2 2015国际邀请赛中国区预选赛首日现场百态
2015/05/26 DOTA
[40:48]DOTA2上海特级锦标赛D组败者赛 Liquid VS COL第二局
2016/02/28 DOTA
python计算方程式根的方法
2015/05/07 Python
python文件的md5加密方法
2016/04/06 Python
python3中dict(字典)的使用方法示例
2017/03/22 Python
Python 类的继承实例详解
2017/03/25 Python
Python自定义函数定义,参数,调用代码解析
2017/12/27 Python
Python获取CPU、内存使用率以及网络使用状态代码
2018/02/08 Python
pycharm配置git(图文教程)
2019/08/16 Python
python中有关时间日期格式转换问题
2019/12/25 Python
PyCharm刷新项目(文件)目录的实现
2020/02/14 Python
python对XML文件的操作实现代码
2020/03/27 Python
在线吉他课程,学习如何弹吉他:Fender Play
2019/02/28 全球购物
TOWER London官网:鞋子、靴子、运动鞋等
2019/07/14 全球购物
行政总监岗位职责
2013/12/05 职场文书
《傅雷家书》教学反思
2014/04/20 职场文书
党员干部一句话承诺
2014/05/30 职场文书
公司员工安全协议书
2014/11/21 职场文书
监察建议书
2015/02/04 职场文书
投资申请报告
2015/05/19 职场文书
2016孝老爱亲模范事迹材料
2016/02/26 职场文书
css3 filter属性的使用简介
2021/03/31 HTML / CSS
Mongo服务重启异常问题的处理方法
2021/07/01 MongoDB
MySQL系列之二 多实例配置
2021/07/02 MySQL
sql时间段切分实现每隔x分钟出一份高速门架车流量
2022/02/28 SQL Server