位置: 编程技术 - 正文

Javascript typeof与instanceof的区别

编辑:rootadmin

推荐整理分享Javascript typeof与instanceof的区别,希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:,内容如对您有帮助,希望把文章链接给更多的朋友!

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) 会返回

Javascript typeof与instanceof的区别

谈到 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

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

Angularjs 设置全局变量的方法总结 AngularJS设置全局变量的三种方法angularjs自身有二种,设置全局变量的方法,在加上js的设置全局变量的方法,总共有三种。要实现的功能是,在ng-app中定

微信开发 微信授权详解 最近有机会做到一个微信项目;把其中自己整理的笔记分享给大家,有不足或错误的地方望大家指正!1关于微信授权这块的流程图,如下一些代码碎片

微信和qq时间格式模板实例详解 直接上代码,代码中有注释,大家好好看!/***将一个时间戳转换成提示性时间字符串,如*2分钟内无显示*2分钟-小时HH:mm*昨天昨天HH:mm*前天前天HH:mm*一

标签: Javascript typeof与instanceof的区别

本文链接地址:https://www.jiuchutong.com/biancheng/373609.html 转载请保留说明!

上一篇:javascript self对象使用详解(js对象foreach)

下一篇:Angularjs 设置全局变量的方法总结(angularjs定义全局变量)

  • 税务纳税等级m级是什么等级
  • 银行借款的补偿金是什么
  • 广告公司如何经营管理
  • 环保科技属于什么行业类别
  • 税前可以扣除的有哪些费用
  • 金融企业往来收入是指
  • 商贸企业涉税问题
  • 承包费会计处理
  • 结转应交所得税属于利润分配吗
  • 企业取得租车发票
  • 住宿发票的税率0
  • 单位给员工上的商业险是什么
  • 增值税普通发票可以抵扣吗
  • 接收境外汇款是什么意思
  • 车辆租赁怎么报税做账
  • 高新企业认定 研发委外费用
  • 运费从货款中扣除后付款分录怎么做
  • 电脑开机自动进入bios怎么解决
  • 退税收入要不要交所得税?
  • windows10如何开热点
  • world超链接
  • 在建工程人工费计入什么科目
  • 复核内容有哪些?
  • 进货的运费怎么计算
  • windows没有搜索
  • 一公顷等于多少千米
  • 投资性房地产减值准备为什么不能转回
  • 图像分割 unet
  • 如何开启framework 3.5
  • 科技型中小企业享受优惠税收政策
  • 冰岛北部内陆景观有哪些
  • macos安装多版macos并存
  • 处理固定资产怎么交税
  • centos从命令行进入图形
  • 分页显示怎么实现
  • 其他债权投资按公允价值计量,为什么计提减值准备
  • reset fields
  • css各种居中
  • 基于php判断客户是否存在
  • index.php怎么修改
  • python django做网页
  • 公司处置已使用4年多的汽车,怎么增值税申报
  • 比赛奖金怎么做账
  • PostgreSQL教程(四):数据类型详解
  • mysql "too many connections" 错误 之 mysql解决方法
  • 税控盘抄报税逾期怎么办
  • 职工食堂的费用,会计上怎么做账?
  • 工地零电零水布置图
  • 计提工资申报个税
  • 收购一家公司需要多少股份
  • 工伤医疗补助可以申请吗
  • 对公账户 发票
  • 房产开发企业以什么为主
  • mysql分页时offset过大的Sql优化经验分享
  • bios设置或coms设置完整的说法
  • centos pam
  • 手把手教您安装软件
  • win81蓝屏重启故障
  • linux中的rpm什么意思
  • linux更新配置
  • win8手提电脑怎么关闭触摸板
  • WIN7系统的镜像文件在哪里
  • 电脑win10显卡驱动
  • cocos2d怎么用
  • 学习软件
  • Android OpenGL ES(六)----进入三维在代码中创建投影矩阵和旋转矩阵
  • myeclipse2013安装配置
  • 杂志内页广告
  • 浏览器css3兼容
  • sticky memo widget
  • shell脚本 -ne 0
  • lohd
  • 在jquery中fadein
  • Python遍历循环
  • java script教程
  • 企业年度总收入指的是什么意思
  • 淮北市国家税务总局电话
  • 甘肃省国家税务局
  • 资源综合利用企业所得税优惠
  • 大宗物流服务平台
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设