JavaScript中instanceof运算符的使用示例
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的instanceof运算符学习教程
语法objectinstanceofconstructor参数object:要检测的对象.constructor:某个构造函数描述:instanceof运算符用来检测constructor.prototype是否存在于参数object的原型链
老生常谈JavaScript数组的用法
JavaScript数组简介JavaScript中的数组与其他语言中的数组是不同的,主要体现在:数组中存储的各项可以是不同类型的数据数组的大小是动态变化的,当新
浅谈javascript基础之客户端事件驱动
我们知道,面向对象发展起来后,一夜之间,几乎所有的语言都能基于对象了,JavaScript也是基于对象的语言。用户在浏览器上的行为称作事件,之后引发
编辑:568数据
标签:对象,数组,类型,原型,实例