掌握聚合最新动态了解行业最新趋势
API接口,开发服务,免费咨询服务

js中typeof用法详细介绍 typeof返回的数据类型有哪些

在JavaScript的世界中,typeof运算符是一个简单而强大的工具,它允许我们检查变量或表达式的类型,从而帮助我们更好地理解和控制程序的行为。本文将详细介绍 typeof 运算符的用法及其返回的数据类型

一、typeof 的基本用法

我们来看看 typeof 是如何工作的。在 JavaScript 中,typeof 是一个一元操作符,它接收一个操作数(通常是变量或者表达式),并返回这个操作数的类型。例如,如果你有一个变量 a,你可以通过 typeof a 来获取它的类型。

let a = 'Hello, world!';
console.log(typeof a); // 输出: "string"

在这个例子中,因为 a 是一个字符串,所以typeof a返回了 "string"。

二、typeof 返回的数据类型

接下来,我们将详细列出 typeof运算符可能返回的所有数据类型:

  1. "undefined":当操作数未定义或为 undefined 时,typeof 会返回 "undefined"。

   let b;
   console.log(typeof b); // 输出: "undefined"
  1. "object":对于对象、数组和 null,typeof 都会返回 "object"。这是因为在 JavaScript 的早期版本中,为了保持与 Java 的一致性,所有的非原始类型都被归类为对象。

   let c = [1, 2, 3];
   let d = {name: 'John'};
   let e = null;
   console.log(typeof c); // 输出: "object"
   console.log(typeof d); // 输出: "object"
   console.log(typeof e); // 输出: "object"
  1. "boolean":当操作数为布尔值 true或 false时,typeof返回 "boolean"。

   let f = true;
   console.log(typeof f); // 输出: "boolean"
  1. "number":对于数字,无论是整数还是浮点数,typeof 都返回 "number"。

   let g = 42;
   let h = 3.14;
   console.log(typeof g); // 输出: "number"
   console.log(typeof h); // 输出: "number"
  1. "string":对于字符串,typeof 返回 "string"。

   let i = 'Hello, world!';
   console.log(typeof i); // 输出: "string"
  1. "symbol":对于符号 (Symbol),`typeof` 返回 "symbol"。

   let j = Symbol('foo');
   console.log(typeof j); // 输出: "symbol"
  1. "function":对于函数或可调用的对象,`typeof` 返回 "function"。这包括使用 `function` 关键字声明的函数、箭头函数、生成器函数以及类的方法等。

   function k() {}
   let l = () => {};
   class M {
     static method() {}
   }
   console.log(typeof k); // 输出: "function"
   console.log(typeof l); // 输出: "function"
   console.log(typeof M); // 输出: "function"
  1. "bigint":对于 BigInt 类型的值,`typeof` 返回 "bigint"。这是从 ECMAScript 2020 (ES11) 开始引入的新类型,用于表示任意精度的大整数。

   let n = 1n;
   console.log(typeof n); // 输出: "bigint"

需要注意的是,由于历史原因和设计上的妥协,typeof null 返回的是 "object",而不是 "null"。这是因为在早期版本的 JavaScript 中,null 被用作表示空对象的值,因此被认为是一个特殊的对象类型。尽管现在我们知道 null 实际上是一个原始值,但这一行为已经被保留下来以避免破坏现有的代码。

通过上述介绍,我们可以看到 typeof 运算符是了解 JavaScript 变量类型的非常有用的工具。尽管存在一些特殊情况(如数组和 null 被错误地标记为 "object"),但它仍然为我们提供了一个快速而有效的方法来识别不同类型的值。在实际开发中,合理利用 typeof 不仅可以帮助我们调试代码,还可以提高代码的可读性。

声明:所有来源为“聚合数据”的内容信息,未经本网许可,不得转载!如对内容有异议或投诉,请与我们联系。邮箱:marketing@think-land.com

  • 购物小票识别

    支持识别各类商场、超市及药店的购物小票,包括店名、单号、总金额、消费时间、明细商品名称、单价、数量、金额等信息,可用于商品售卖信息统计、购物中心用户积分兑换及企业内部报销等场景

    支持识别各类商场、超市及药店的购物小票,包括店名、单号、总金额、消费时间、明细商品名称、单价、数量、金额等信息,可用于商品售卖信息统计、购物中心用户积分兑换及企业内部报销等场景

  • 涉农贷款地址识别

    涉农贷款地址识别,支持对私和对公两种方式。输入地址的行政区划越完整,识别准确度越高。

    涉农贷款地址识别,支持对私和对公两种方式。输入地址的行政区划越完整,识别准确度越高。

  • 人脸四要素

    根据给定的手机号、姓名、身份证、人像图片核验是否一致

    根据给定的手机号、姓名、身份证、人像图片核验是否一致

  • 个人/企业涉诉查询

    通过企业关键词查询企业涉讼详情,如裁判文书、开庭公告、执行公告、失信公告、案件流程等等。

    通过企业关键词查询企业涉讼详情,如裁判文书、开庭公告、执行公告、失信公告、案件流程等等。

  • IP反查域名

    IP反查域名是通过IP查询相关联的域名信息的功能,它提供IP地址历史上绑定过的域名信息。

    IP反查域名是通过IP查询相关联的域名信息的功能,它提供IP地址历史上绑定过的域名信息。

0512-88869195
数 据 驱 动 未 来
Data Drives The Future