JavaScript中的typeof和instanceof
2016-03-20 19:40
751 查看
在网上看了很多篇文章是讲typeof和instanceof的作用以及区别,但是看完都是云里雾里的,最后发现如果对JavaScript原始类型和引用类型理解的非常透彻的话,这两者的作用和区别也就显而易见了。
这是自己总结的对JavaScript原始类型和引用类型的理解:http://blog.csdn.net/fly_zxy/article/details/50936244。
这是自己总结的对JavaScript原始类型和引用类型的理解:http://blog.csdn.net/fly_zxy/article/details/50936244。
typeof
在变量和值上调用typeof,将返回一个字符串,这个字符串标示了这个变量或值的类型。如果这个变量或值是一个引用类型将会返回"object"。如果是原始类型输出结果如下:console.log(typeof "ABC"); console.log(typeof true); console.log(typeof 112); console.log(typeof undefined); console.log(typeof null); string boolean number undefined object您会问typeof null 返回的object?这是因为JavaScript最初实现的一个错误,然后被沿用到现在。现在,null被认为是对象的占位符,从而解释了这一矛盾。从技术将null还是一个元素类型。比如:var obj 变量是一个对象类型的,我们在程序中会这样给obj初始值:var obj=null;
instanceof
如上所述,typeof在运算一个引用类型时,总是返回object。不能判断这个引用类型是根据那个函数实例化的。这个时候就需要用到instanceof。instanceof判断一个对象是否是另一个函数(或对象)的实例。例如:var array = new Array(); console.log(array instanceof Array); //=>true var array = new Array(); console.log(array instanceof Object); //=>truearray是Array函数的一个实例对象,同时也是Object函数的实例。
相关文章推荐
- js实现随机的四则运算题目(2)-更新界面
- JavaScript表单编程
- 【BZOJ1014】[JSOI2008]火星人prefix【Splay】【Hash】
- JSON数据格式
- Javascript事件模型
- JavaScript 中的类型
- JS的第二周
- javascript中的对象
- js获取项目根路径
- ExtJs 同步与异步请求
- <香港科技大学html+css+js课堂笔记>week1--CSS部分--第二部分
- js中对象属性值排序(字典倒排序)
- JavaScript笔记(3)
- 简单的Gson转换json数据
- JavaScript笔记(2)
- JS+DOM实例一:鼠标滑动图片
- javascript中构造函数
- <香港科技大学html+css+js课堂笔记>week1--CSS部分
- js slideToggle 的另一种实现方式,根据不同的状态添加选中颜色
- Day02 CSS,JAVAScript