位置: 编程技术 - 正文

基于javascript中的typeof和类型判断(详解)(javascript基于什么的语言)

编辑:rootadmin

推荐整理分享基于javascript中的typeof和类型判断(详解)(javascript基于什么的语言),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:javascript基础,基于javascript的毕业设计,javascript基础,javascript运用,javascript运用,javascript基于什么的语言,javascript基于什么的语言,javascript基于什么的语言,内容如对您有帮助,希望把文章链接给更多的朋友!

typeof

ECMAScript 有 5 种原始类型(primitive type),即 Undefined、Null、Boolean、Number 和 String。我们都知道可以使用typeof运算符求得一个变量的类型,但是对引用类型变量却只会返回object,也就是说typeof只能正确识别基本类型值变量。

您也许会问,为什么 typeof 运算符对于 null 值会返回 "object"。这实际上是 JavaScript 最初实现中的一个错误,然后被 ECMAScript 沿用了。现在,null 被认为是对象的占位符,从而解释了这一矛盾,但从技术上来说,它仍然是原始值。

最后一个比较奇怪,typeof一个不存在的变量x居然返回了"object"而不是"undefined"。

我们在来如下代码:

对于数组和对象都返回"object",因此我们日常开发中一个常见需求就是如何判断变量是数组还是对象。

类型判断

类型判断,一般就是判断是否是数组,是否是空对象。这是针对这个需求,我日常用过或见过的判断方法

判断是否是数组

有数组:var a = [1,2,3,4,5];

方法一:

基于javascript中的typeof和类型判断(详解)(javascript基于什么的语言)

toString.call(a); // "[object Array]"方法二:

a instanceof Array; //true方法三:

a.constructor == Array; //true 第一种方法比较通用,也就是Object.prototype.toString.call(a)的简写。

instanceof和constructor判断的变量,必须在当前页面声明的,比如,一个页面(父页面)有一个框架,框架中引用了一个页面(子页面),在子页面中声明了一个a,并将其赋值给父页面的一个变量,这时判断该变量,Array == object.constructor会返回false;

判断是否是空对象

有变量:var obj = {};

方法一:

JSON.stringify(obj); // "{}"通过转换成JSON对象来判断是否是空大括号

方法二:

if(obj.id){ //如果属性id存在....}这个方法比较土,大多数人都能想到,前提是得知道对象中有某个属性。

方法三:

这个方法是jQuery的isEmptyObject()方法的实现方式。

以上这篇基于javascript中的typeof和类型判断(详解)就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持积木网。

javascript浏览器用户代理检测脚本实现方法 以下是完整的用户代理字符串检测脚本,包括检测呈现引擎、平台、Windows操作系统、移动设备和游戏系统。varclient=function(){//呈现引擎varengine={ie:0,gecko:0

JavaScript模拟实现封装的三种方式及写法区别 前言继承是使用一个子类继承另一个父类,那么子类可以自动拥有父类中的所有属性和方法,这个过程叫做继承!JS中有很多实现继承的方法,今天我给

Popup弹出框添加数据实现方法 本文实例为大家分享了Popup弹出框添加数据的具体代码,供大家参考,具体内容如下逻辑窗口P1中显示一组数据,并提供一个添加按钮点击按钮,弹出新

标签: javascript基于什么的语言

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

上一篇:Tutorial 3: First Triangle

下一篇:javascript浏览器用户代理检测脚本实现方法(JavaScript浏览器打开)

  • 附加税申报表怎么做
  • 评估报告是什么
  • 增值税加计扣除怎么做账
  • 法人拿走公司利润要交税吗
  • 已收货款没发货怎么退款
  • 科目余额表解析
  • 抵扣认证的发票开红字有影响吗
  • 公司内部人员发言稿
  • 报关单境外收货人和合同不一致
  • 信用减值损失借贷方表示什么意思
  • 认缴出资怎么填财务报表
  • 回购股票增加权益吗
  • 公司注销时有大额应付款如何做账务处理合适?
  • 红字抵扣怎么开
  • 物业公司代收物业费
  • 年终红包怎么入账
  • 税负率过低进行什么交易
  • 批发零售企业用什么软件好
  • 不影响利润的跨期发票如何处理?
  • 没有按时缴纳税属于什么
  • 营改增以后小规模纳税人如何纳税
  • 最近偷税女星都有谁
  • 补记去年收入分录
  • 委托加工费的增值税计入成本吗
  • 跨市工程预交的税怎么算
  • 抵扣联和发票联算一张发票吗
  • 住宿费进哪个科目
  • 个人转租房子
  • 小规模企业记账流程
  • 筹建期间的开办费包括哪些
  • 如何编制固定资产折旧计算表
  • 管理不善造成的损失的会计分录
  • 应收账款的差额计入哪里
  • win11怎么清理电脑垃圾
  • 会计凭证包括哪几种凭证
  • springboot jni
  • ChatGPT 能自己跑代码了!
  • css基础入门
  • 库存盘亏进项税怎么抵扣
  • find命令结果怎么导出到文本
  • ping命令详解步骤
  • WordPress 浏览量修改
  • 购买的服务怎么做账
  • 织梦怎么新建页面
  • sql去除
  • 数组和结构体
  • 金蝶专业版如何打印凭证
  • 退还押金的会计分录怎么写
  • 自然人独资公司可以变更法人吗
  • 收取水电费计入什么科目
  • 销货方怎么开具购买方红冲的发票
  • 工程奖金计入什么科目
  • 9个点的税是多少
  • 委托代理出口如何缴纳增值税
  • 投资购入房产会亏钱吗
  • 强化劳务输出
  • 金税盘离线开票时间超限的处理方法
  • 在mysql中,删除表的外键约束的关键字为()
  • mysql查询id最大的记录
  • mysql5.7.
  • 下载win10 32位
  • mac安装mysql详细教程
  • linux用户权限管理
  • 电脑重装win7系统黑屏
  • macos 网速慢
  • win7怎么提升电脑性能
  • skype登录不了一直转圈
  • nodejs安装express-g报错
  • android开发工程师案例教程源码
  • 在dos中文件是以什么目录结构
  • 游戏开发吧
  • 详解怎样利用双色球密码选号
  • qq登录失败是怎么回事
  • 谷歌邮箱
  • 通用申报表水利基金怎么填
  • 租了店面
  • 北京市地税局第一稽查局郭洪鑫
  • 税务局纳税服务品牌
  • 内蒙古总工会工会经费
  • 注册一个信息咨询公司需要什么
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设