您现在的位置是:首页 > 文章详情文章详情

JavaScript 中 instanceof 运算符简介

会飞的猪 2018-12-21 184人已围观

简介白码驿站是一个面向开发者的知识共享社区,专注于为开发者打造一个纯净的技术交流社区(源码下载,免费在线图片压缩,jquery插件,插件下载,JS/CSS在线压缩。)-白码驿站

instanceof 一般用法


        在 JavaScript 中,判断一个变量的类型尝尝会用 typeof 运算符,但是typeof有很大的局限性,例如在使用 typeof 运算符时如果判断引用类型存储值会出现一个问题,无论引用的是什么类型的对象,它都返回"object"。这时候如果想准确判断对象的类型, 使用typeof显然不是那么的合适了,不过JavaScript提供了另外一种运算符--instanceof,来解决这个问题。instanceof 运算符与 typeof 运算符很相似,可以识别正在处理的对象的类型。与 typeof 方法不同的是,instanceof 方法要求开发者明确地确认对象为某特定类型

例如: 

                                        
var str = new String("hello world"); 
console.log(str instanceof String);   // 输出 "true"
                                

        这段代码问的是“变量 str 是否为 String 对象的实例?”str 的确是 String 对象的实例,因此结果是"true"。尽管不像 typeof 方法那样灵活,但是在 typeof 方法返回 "object" 的情况下,instanceof 方法还是很有用的。


instanceof 在继承中关系中的用法


instanceof 可以在继承关系中用来判断一个实例是否属于它的父类型,例如:

                                        
// 判断 Student 是否是 Person 类的实例
function Student(){} 
function Person(){} 
Student.prototype = new Person();//JavaScript 原型继承
Student stu = new Student();
console.log(Student instanceof Person); //输出“true”
                                

不了解原型的小伙伴们, 可以移步 JavaScript 中 扩展方法、原型概念(Prototype)

Tags: JavaScript/Jquery

很赞哦! (3)

文章评论

系统处理中...