掌握聚合最新动态了解行业最新趋势
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