您的位置:首页 > Web前端 > JavaScript

javascript中的instanceof运算符

2015-03-14 09:43 344 查看
instanceof运算符希望左操作数是一个对象,右操作数表示对象的类;如果左侧的对象是右侧类的实例,则返回true,否则返回false。由于js中对象的类是通过初始化它们的构造函数来定义的,因此instanceof的右操作数应当是一个函数。比如:

var d = new Date();
d instanceof Date; //true
d instanceof Object; //true
d instanceof Number; //false


所有对象都是Object的实例,intanceof也会包含对父类的检查。如果instanceof左操作数不是对象的话,instanceof返回false;若右操作数不是函数,则抛出类型错误异常。

为了计算o instanceof f,js首先计算f.prototype,然后在原型链中查找o,如果找到,则o是f(或f父类)的一个实例,表达式返回true,否则返回false。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: