javascript:typeof与instanceof区别
from:http://www.wxwdesign.cn/article/skills/javascript_typeof_instanceof.htm
JavaScript中typeof和instanceof常用来判断一个变量是否为空,或者是什么类型的。但它们之间还是有区别的:
typeof
typeof 是一个一元运算,放在一个运算数之前,运算数可以是任意类型。
它返回值是一个字符串,该字符串说明运算数的类型。,typeof一般只能返回如下几个结果:number,boolean,string,function,object,undefined。 我们可以使用typeof来获取一个变量是否存在,如if(typeof a!="undefined"){alert("ok")},而不要去使用if(a)因为如果a不存在(未声明)则会出错,对于Array,Null等特 殊对象使用typeof一律返回object,这正是typeof的局限性。
网上的一个小例子:
运行代码
instanceof
instance:实例,例子
a instanceof b?alert("true"):alert("false"); //a是b的实例?真:假
instanceof 用于判断一个变量是否某个对象的实例,如var a=new Array();alert(a instanceof Array);会返回true,同时alert(a instanceof Object)也会返回true;这是因为Array是object的子类。再如:function test(){};var a=new test();alert(a instanceof test)会返回
谈到instanceof我们要多插入一个问题,就是function的arguments,我们大家也许都认为arguments是一个Array,但如果使用instaceof去测试会发现arguments不是一个Array对象,尽管看起来很像。
另外:
测试 var a=new Array();if (a instanceof Object) alert('Y');else alert('N');
得'Y’
但 if (window instanceof Object) alert('Y');else alert('N');
得'N'
所以,这里的instanceof测试的object是指js语法中的object,不是指dom模型对象。
使用typeof会有些区别
alert(typeof(window) 会得 object
转载于:https://www.cnblogs.com/xuan52rock/p/4538037.html
javascript:typeof与instanceof区别相关推荐
- JavaScript重难点解析1(数据类型——var、let、const区别,类型补充,“===”、“typeof”、“instanceof”区别,Symbol数据类型)
JavaScript重难点解析1(数据类型) var.let.const区别: 类型补充 "==="."typeof"."instanceof&quo ...
- 面试官:说说 typeof 与 instanceof 区别?
一.typeof typeof 操作符返回一个字符串,表示未经计算的操作数的类型 使用方法如下: typeof operand typeof(operand) operand表示对象或原始值的表达式, ...
- JS中typeof与instanceof的区别
JavaScript 中 typeof 和 instanceof 常用来判断一个变量是否为空,或者是什么类型的.但它们之间还是有区别的: typeof typeof 是一个一元运算,放在一个运算数之前 ...
- typeof 与 instanceof 的使用和区别
typeof typeof 操作符返回一个字符串,表示未经计算的操作数的类型. 原始类型 基本类型:number/string/boolean function object undefined 语法 ...
- JavaScript学习(六十三)—typeof和instanceof检测数据类型的异同
JavaScript学习(六十三)-typeof和instanceof检测数据类型的异同 一.JavaScript中的数据类型 在JavaScript中,我们把数据可以分为原始类型和引用数据类型. 原 ...
- typeof和instanceof的区别
typeof 用于判断数据类型,返回值有number.string.boolean.function.undefined.object 六个. <script>let a = [1, 2, ...
- 详解js中typeof、instanceof与constructor
typeof返回一个表达式的数据类型的字符串,返回结果为js基本的数据类型,包括number,boolean,string,object,undefined,function.语法为typeof(da ...
- instanceof用法_「JS很简单」JavaScript 基础之 instanceof操作符
最近开始在整理ES6/ES7/ES8/ES9的知识点(已经上传到 我的博客 上),碰到一些知识点是自己已经忘记(用得少的知识点),于是也重新复习了一遍. 这篇文章要复习的 instanceof 是我在 ...
- php 变量类型 typeof,typeof和instanceof的区别是什么
typeof和instanceof的区别是:typeof的返回值是一个字符串,用来说明变量的数据类型:instanceof的返回值是布尔值,用于判断一个变量是否属于某个对象的实例. 比较typeof与 ...
- JavaScript typeof
文章目录 JavaScript typeof, null, 和 undefined typeof 操作符 Null Undefined Undefined 和 Null 的区别 JavaScript ...
最新文章
- ISDN,俗称一线通!
- Wireshark安装失败或找不到网络接口问题
- 清华大学计算机系网络教学视频31门计算机课程
- java 数组 内存_图解Java数组的内存分配
- 复地邮箱服务器地址,打印服务器设置方法
- 晋职称不考外语 计算机,评职称不考外语计算机的价值导向
- mysql active推送消息_java实现基于activeMQ的消息推送
- HDU1427 速算24点【DFS】
- html顶栏符号不显示,html – 带有USE标记的SVG无法呈现
- linux mysql 开发_Linux64下mysql安装和开发
- 使用NanoHttpd在Android项目中搭建服务器
- poi设置excel表格边框
- java 校验银行卡号_Java之——基于Luhn算法的银行卡卡号的格式校验
- 访问本地环境时出现The requested URL / was not found on this server.
- Access Violation(非法访问)解析
- 微信客户端如何发只有纯文字 不带图片的朋友圈动态
- [语录]足球解说员贺炜语录
- ECharts动态图表展示
- 【kimol君的无聊小发明】—用python插入独创性声明
- 为什么文件路径 Program Files 可以写成 Progra~1
热门文章
- 取出Cookie中的中文显示乱码解决方法。经验证第三种方法有效。
- C# 利用ICSharpCode.SharpZipLib.dll 实现压缩和解压缩文件
- POJ 3049 DFS
- hdu_5894_hannnnah_j’s Biological Test(打表找规律)
- Tomcat6.0 管理器配置
- powershell ise好字库和diy配色文件分享
- memcached学习笔记(1)——memcached原理
- 写了一个对象集合排序的类
- 【react】 react---项目的-----------简单路由配置
- 使用寻路算法写的一个小项目