位置: 编程技术 - 正文

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定义全局变量)

  • 流动资金包括哪三种
  • 微信收入算现金流出吗
  • 进项抵扣的金额怎么算
  • 房地产收入成本确认
  • 房地产企业如何进行市场细分
  • 估算成本的会计要素
  • 多借多贷的会计分录格式
  • 公司投资的股权财产怎么认定
  • 会计学中递延收益怎么算
  • 对方承担税差该如何入账?
  • 出纳现金日记账表格模板
  • 银行汇兑计入哪个会计科目?
  • 公司发给员工的奖金要交税吗
  • 公司委托公司收款合法吗
  • 员工探亲路费报销交个税吗
  • 装修公司什么要自己买
  • 无形资产摊销算头不算尾
  • 企业原材料成本有哪些
  • 提供建筑安装服务
  • 补申报以前年度税款
  • 加班车费报销计入什么科目
  • 企业若需要给客户交税
  • 高新技术企业研发费用归集
  • Dardanup郡的小矮人村,澳大利亚 (© Amanda Hughes/Alamy)
  • php floor()
  • 房产税城镇土地使用税申报期限
  • 财政补贴增值税如何开票
  • joplin使用
  • 实收资本和注册资本不一致的会计处理
  • php上级目录
  • 小规模城建税减半征收2021新政策
  • 资产负债表和利润表的认定
  • YII视图整合kindeditor扩展的方法
  • 律师事务所要交残保金吗
  • 拓展训练属于培训费吗
  • 增值税普通发票税率
  • 其他权益工具投资是金融资产吗
  • 退伍军人企业所得税优惠
  • 暂估入库的金额与发票金额不一样
  • 织梦如何添加浮动广告
  • SQLite数据库常用语句及MAC上的SQLite可视化工具MeasSQLlite使用方法
  • mysql查看创建表代码
  • mysql主要支持哪些数据类型?
  • 登记注册车辆登记英语
  • 看望员工现金属于什么费用
  • 海关缴款书能重开吗
  • 不征税收入和免税收入有哪些项目
  • MSSQL2005在networkservice权限运行附加数据库报(Microsoft SQL Server,错误: 5120)
  • 计提加计抵减
  • 工程物资月末必须结转吗
  • 公司对于子公司的股权投资
  • 预付账款和应付账款减少
  • 行政拨款给工会的账务处理
  • 工程总包含设备工程吗
  • 所有者权益变动表图片
  • 捐赠支出算费用吗
  • 养老院老人摔倒责任划分
  • 单位车辆保险费
  • 计提利息为什么贷方是应付利息
  • 税审报告一定要税所主任签吗
  • 小企业应该如何发展
  • mysql删除表数据怎么恢复
  • Mac OSX通过homebrew卸载formula的方法
  • sun solaris 8何启用telnet ftp 功能
  • windows 7中,执行应用程序的方法有哪几种?
  • linux字符串命令
  • windows10预览版是什么
  • linux批量处理
  • win10系统最新更新
  • Immutable 在 JavaScript 中的应用
  • 轻松掌握瓷砖铺贴技术 pdf
  • nodejs 代码加密
  • js拖拽效果
  • unity游戏开发的技术
  • php curl获取cookie
  • 基于python的应用
  • 用python写脚本
  • jquery 是否显示
  • python中jsonpath
  • 深圳国税局网站如何查询企业往年财务报表
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设