位置: 编程技术 - 正文

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

  • 小规模纳税人的账务处理
  • 纳税人规模证明是什么
  • 企业所得税缴纳时计提可以吗
  • 临时工工资怎么申报个人所得税
  • 实收资本增加的原因
  • 现金流量科目怎么选择
  • 怎么处理善意取得的大头小尾发票?
  • 建筑业挂靠核定征收会计分录怎么写?
  • 董事费如何计算个人所得税
  • 增值税附表是自动生成的吗
  • 没有成立工会的企业怎么做账
  • 食堂购买的固定资产可以一次性加计扣除吗
  • 商品和服务税收编码怎么查
  • 通讯费可以放入办公费吗
  • 什么情况下个税税率是10%
  • 新成立的有限公司
  • 公转私合理吗
  • 如何玩转win11
  • 运费用会计分录
  • 农业生产用水水资源税
  • 总分公司企业所得税合并申报
  • php发送电子邮件
  • ubuntu22.04更换RTX 4090显卡后,安装驱动和pytorch记录
  • win10预览版是什么意思
  • 为什么篮牙耳机卡
  • 电风扇需要用完电再充吗
  • 黄金税收多少
  • 外经证逾期未核实怎么办
  • 编译原理第三版课后答案
  • video.js教程
  • 出口退税的一般程序
  • discuz去除底部
  • 纳税人备案期限
  • 销售免税农产品如何开票
  • wordpress woocommerce 建站
  • 帝国cms模板怎么样用
  • 本年利润有余额是什么意思
  • 公账转给员工工资情况说明怎么写
  • 金税三期个人所得税申报
  • 购买商品或服务的人称为
  • 固定资产折旧如何影响利润
  • 履约保证金打到个人账户合法吗
  • 其他应付款科目贷方登记发生的各种应付
  • 存货跌价准备的账务处理
  • 房地产企业取得土地的契税如何记账
  • 物业 收电费
  • 融资性售后回租承租方为什么不交税
  • 工程物资主要包括建筑材料
  • 待认证转出
  • 贷款利息进项税额转出
  • 未取得发票能计入在建工程吗
  • 财产租赁合同印花税计税依据
  • 负债清偿损益明细表计税基础怎么填
  • 商业汇票到期无法兑现
  • 投标保证金退回是不是没中标
  • 租来的办公室装修费摊销几年
  • 离线方式快速安装在哪里
  • macOS 10.12 Beta 7更新了什么 macOS 10.12 Beta7更新内容汇总
  • win10回收此电脑
  • win10 预览版变正式版
  • win10预览体验三个选项
  • window怎么样
  • macbook如何安装windows
  • linux磁盘空间不足怎么清理
  • win7不重装修复系统
  • win7电脑c盘格式化
  • wifi显示开发状态
  • bat命令详解
  • python加密模块
  • 解读JavaScript中 For, While与递归的用法
  • jQuery用FormData实现文件上传的方法
  • [置顶]bilinovel
  • javascript基础笔记
  • python多线程爬虫代码
  • javascript编程语言
  • 广东国家电子税务全电发票
  • 3.0排量 车船税
  • 企业所得税减按90%计入收入总额
  • 税务补录什么时候上班
  • 税务申报时显示未抄报税?
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设