位置: 编程技术 - 正文

基于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浏览器打开)

  • 增值税发票认证在哪里
  • 投资收益转入资本公积
  • 哪些福利费可以进在建工程
  • 自产和外购的视频区别
  • 费用化的研发支出
  • 分公司没有业务季报怎么处理
  • 小企业固定资产折旧方法
  • 土地使用税为什么不计入存货成本
  • 软件生产企业
  • 农业生产企业是指什么
  • 劳务分包异地用预缴税款吗?
  • 税务需要申报吗
  • 营改增对资产负债表的影响
  • 母公司子公司之间担保
  • 货代免税是否需要每年备案
  • 原始凭证的基本内容包括会计科目吗
  • 去年进项税没有抵扣了
  • 剑灵玩一会就崩溃
  • 设备维修费增值税
  • 偶然所得是什么科目
  • 若依前后端分离需要准备啥
  • php的get
  • nfcmp3
  • php中session什么意思
  • 蓬莱德尔塔
  • php中的pdo
  • yii框架连接数据库
  • 职工报销医药费属于什么会计科目
  • 委托研发技术合同登记
  • phalcon model在插入或更新时会自动验证非空字段的解决办法
  • python导入其他文件的函数
  • sosreport命令收集详细信息
  • 印花税每个月都报吗
  • 手工明细账簿怎么登账
  • 自然人税收管理系统官网
  • 个人开具工程款发票
  • 停工损失会计科目
  • 企业主营业务利润是由什么构成的
  • mysql 执行动态语句
  • 固定资产计提折旧的会计科目
  • 中餐补助
  • 税控盘买了怎么用
  • 服务行业人工费一般控制在多少合适
  • 普通发票忘记开数量和单价可以用吗?
  • 过渡期补贴是什么意思
  • 不能计入固定资产原值的有
  • 未入账的记账凭证填错了怎么办
  • 购置固定资产进项税处理的变迁
  • 普票不开明细可以不
  • 应收账款是净额列示吗
  • centos虚拟机怎么用
  • Windows 10 与 MySQL 5.5 安装使用及免安装使用详细教程(图文)
  • 微软官方重做系统
  • 远程桌面登录显示其他用户
  • linux ubuntu安装教程
  • mac怎么复制粘贴文件夹
  • win10edge浏览器不见了
  • xp系统运行在哪
  • 怎么关闭xp系统弹窗
  • 与web站点和web页面
  • Linux基础与应用开发指南pdf百度云
  • win7安全防护怎么关闭
  • win10周年版
  • js+html
  • 谷歌编程之夏2021
  • ie8兼容性模式设置在哪
  • 深入python3
  • shell bash sh
  • Python中http请求方法库汇总
  • 置顶高手
  • jquery版本区别
  • jquery 图片裁剪
  • js阻止浏览器后退
  • python:\n
  • 增加税务人员怎么加?
  • 广州地税预约网官网
  • 安徽省定额发票真伪查询
  • 非经营性房屋具体指哪些?
  • 居民个人从境外公司获得分红
  • 海关退税是什么意思啊
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设