当前位置: 首页 > news >正文

JavaScript类型判断(总结)

1. 使用`typeof`操作符

`typeof`操作符可以返回一个值的类型的字符串表示。例如:

typeof 42; // "number"
typeof "Hello"; // "string"
typeof true; // "boolean"
typeof undefined; // "undefined"
typeof null; // "object"(这是一个历史遗留问题,实际上null是一个原始值)
typeof {} // "object"
typeof [] // "object"
typeof function() {} // "function"

需要注意的是,`typeof`对于数组、对象以及null的判断结果都是"object",而对于函数的判断结果是"function"。

2.使用`instanceof`操作符

`instanceof`操作符可以判断一个对象是否属于某个特定的类型。例如: 

const arr = [];
arr instanceof Array; // trueconst obj = {};
obj instanceof Object; // trueconst func = function() {};
func instanceof Function; // true

需要注意的是,`instanceof`操作符只能用于判断对象的类型,不能用于判断原始值的类型。

3.使用`Object.prototype.toString.call()`方法

Object.prototype.toString.call(42); // "[object Number]"
Object.prototype.toString.call("Hello"); // "[object String]"
Object.prototype.toString.call(true); // "[object Boolean]"
Object.prototype.toString.call(undefined); // "[object Undefined]"
Object.prototype.toString.call(null); // "[object Null]"
Object.prototype.toString.call({}); // "[object Object]"
Object.prototype.toString.call([]); // "[object Array]"
Object.prototype.toString.call(function() {}); // "[object Function]"

Object.prototype.toString.call() 方法返回的是一个字符串,其中包含了具体的类型信息。

这些方法可以根据不同的需求来选择使用,通常使用`typeof`操作符和`instanceof`操作符就可以满足大部分的类型判断需求。

http://www.lryc.cn/news/446034.html

相关文章:

  • SpringBoot之登录校验关于JWT、Filter、interceptor、异常处理的使用
  • 我的AI工具箱Tauri版-FunAsr音频转文本
  • C++:模版初阶
  • Python Web 与区块链集成的最佳实践:智能合约、DApp与安全
  • 使用工具将截图公式转换为word公式
  • 深度学习(6):Dataset 和 DataLoader
  • Qt窗口——QToolBar
  • MySQL—存储过程详解
  • 2024ICPC网络赛2记录:CK
  • PerparedStatement概述
  • 联影医疗嵌入式面试题及参考答案(3万字长文)
  • Rust的作用?
  • 无人机之可承受风速的影响因素
  • HTML与JavaScript结合实现简易计算器
  • Docker网络原理
  • PyTorch 目标检测教程
  • 校园美食导航:Spring Boot技术的美食发现之旅
  • 51单片机 - DS18B20实验1-读取温度
  • go语言基础入门(一)
  • linux 基础(一)mkdir、ls、vi、ifconfig
  • DAMODEL丹摩智算:LLama3.1部署与使用
  • Spring Boot 配置全流程 总结
  • 爬虫技术初步自学
  • 【力扣 | SQL题 | 每日三题】力扣175, 176, 181
  • SpringBoot使用hutool操作FTP
  • 如何防止SQL注入攻击
  • Java List类
  • 使用 Internet 共享 (ICS) 方式分配ip
  • SMTP/IMAP服务发在线邮件时要用到
  • Threejs绘制圆锥体