位置: 编程技术 - 正文

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

  • 对外支付人民币存在残缺污损的问题
  • 减免税款的会计分录在什么时候处理
  • 旅游公司的账务框架
  • 周转材料登三栏式明细账吗
  • 工程材料增值税税率2023年
  • 合同印花税用不用计提
  • 公司债券投资的优缺点
  • 建设单位对施工单位的管理要求
  • 支付收购股权款如何做账
  • 代扣代缴个人所得税
  • 以前年度损益调整属于哪类科目
  • 公司成立初期费用入账
  • 劳务报酬算公积金基数吗
  • 其他应收款在什么方
  • 个人所得税返还奖励财务人员做账
  • 购买金税盘需要法人去税务局进行信息采集吗
  • 国家税务总局公告2023年第1号
  • 加计扣除需要注意的几大风险点
  • 固定资产折旧在资产负债表属于什么
  • 店内上保险退保
  • 收到劳务公司缴税怎么办
  • 合并后的新企业有哪些
  • 支付个人利息没有取得发票
  • 托收凭证的会计科目
  • 增值税加计扣除政策
  • 企业私募股权投资
  • 物流补贴需要交税吗
  • 借用下属单位人员违反什么政策
  • tplink无线网卡驱动802.11n
  • 在windows 7中
  • 开启自动备份注册表
  • 如何重装系统win7旗舰版
  • php __destruct
  • vue 大屏可视化设计 开源
  • 发票已开不符合收入确认条件账务处理怎么做?
  • 预收账款可以挂账多久
  • YII2.0之Activeform表单组件用法实例
  • php网站实例
  • 工会费会计分录
  • laravel create
  • element html
  • php删除数组中指定元素
  • 餐饮类的增值税
  • labview oop
  • 基本数据结构包括哪些
  • dict.setdefault()在python中设置默认值
  • python装饰器如何保留原函数信息
  • 发票冲红如何进入系统
  • 所得税汇算清缴怎么操作
  • 买一赠一税务局答复
  • 职工教育经费和职工福利费扣除比例
  • 企业印花税的计算公式是什么
  • 归属净利润和扣非净利润看哪一个
  • 公户的结算卡是否可以转账
  • 企业销售收入确认条件
  • 高新企业必须做加计扣除吗
  • 股息分红要交多少税
  • 车辆保险赔款怎么算
  • 会计准则允许预提吗
  • 其他现代服务业是什么
  • 财务费用中的汇兑损益和汇兑收益的区别
  • 年末净利润为负说明什么
  • 费用预算表怎么做
  • mysql内存占用一直增高不释放
  • win2000停止服务
  • win8最新版本
  • 检测电脑屏幕
  • linux nc命令详解
  • 安装yum的命令
  • windows7禁止开机启动
  • linux dhcpv6
  • linux服务器如何配置ip
  • js实现的简洁二次函数
  • shell中的-n
  • 学完js不会用怎么办
  • javascript中的匿名函数
  • 服务行业工作总结不足
  • 沈阳特慢病待遇
  • 2018年北京个人所得税查询
  • 云南2021高考改革
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设