javascript的typeof返回哪些数据类型

devtools/2024/9/22 18:32:48/

在JavaScript中,typeof 是一个一元运算符,它返回表示一个未计算的操作数类型的字符串。以下是 typeof 可能返回的数据类型字符串,以及如何使用它们:

"undefined":

如果变量已声明但未被赋值,则 typeof 返回 "undefined"。

使用示例:

javascript

let x;

console.log(typeof x); // 输出 "undefined"

"boolean":

如果变量是布尔值 true 或 false,则 typeof 返回 "boolean"。

使用示例:

javascript

let y = true;

console.log(typeof y); // 输出 "boolean"

"string":

如果变量是字符串,则 typeof 返回 "string"。

使用示例:

javascript

let z = "Hello, world!";

console.log(typeof z); // 输出 "string"

"number":

如果变量是数字(包括整数和浮点数),则 typeof 返回 "number"。

使用示例:

javascript

let a = 123;

let b = 3.14;

console.log(typeof a); // 输出 "number"

console.log(typeof b); // 输出 "number"

"object":

对于大多数其他值(包括数组、对象、null和正则表达式),typeof 返回 "object"。但请注意,null 是一个特例,因为 typeof null 返回 "object"(这是一个历史遗留问题)。

使用示例:

javascript

let obj = {};

let arr = [];

let regex = /hello/;

let nullValue = null;

console.log(typeof obj); // 输出 "object"

console.log(typeof arr); // 输出 "object"(尽管它实际上是数组)

console.log(typeof regex); // 输出 "object"(尽管它实际上是正则表达式)

console.log(typeof nullValue); // 输出 "object"(这是一个特例)

为了区分 null 和其他对象,你可以使用 nullValue === null 这样的条件检查。

"function":

如果变量是一个函数,则 typeof 返回 "function"。

使用示例:

javascript

function greet() {

  console.log("Hello!");

}

console.log(typeof greet); // 输出 "function"

 

"symbol" (ES6及更高版本):

如果变量是一个Symbol类型的值,则 typeof 返回 "symbol"。

使用示例:

javascript

let sym = Symbol("mySymbol");

console.log(typeof sym); // 输出 "symbol"

请注意,typeof 不能用于检测对象的精确类型(例如,它不能区分数组和对象),但在某些情况下,你可以使用其他方法或技巧(如 Array.isArray() 或 instanceof)来进行更具体的类型检查。

 


http://www.ppmy.cn/devtools/42395.html

相关文章

2024-5-23 石群电路-14

2024-5-23,星期四,22:20,天气:晴,心情:晴。今天没有什么重要的事情发生,心情一如既往的平静,距离返校假期还有两天~~~。 今天观看了石群老师电路基础课程的第23/24个视频&#xff0…

virtualbox 装windows7 ,但是只能ping通宿主机,无法ping通网络和上网

virtualbox 装windows7 ,使用桥接,但是只能ping通宿主机,无法ping通网络,怎么回事呢? ChatGPT的回答: 解决 VirtualBox 无法 Ping 通网络的问题 如果你在 VirtualBox 中安装了 Windows 7,但只…

Linux——进程信号(一)

1.信号入门 1.1生活中的信号 什么是信号? 结合实际红绿灯、闹钟、游戏中的"!"等等这些都是信号。 以红绿灯为例子: 一看到红绿灯我们就知道:红灯停、绿灯行;我们不仅知道它是一个红绿灯而且知道当其出现不同的状况…

法语培训柯桥法语学习法语入门基础发音学习法语留学考级旅游

一般来说,quelquun指的是一个不确定的人: 要么我们不知道到底是谁: Quelquun a boulott mon croissant ! 有人吃了我的羊角面包! 要么我们不想说是谁: Quelquun ma assure que vous tiez capable de tout pour un cr…

学习Uni-app开发小程序Day16

今天是基础学习的最后一天,把前面学的做个小的案例,就是一个请求网络的功能。这里面牵扯到的知识点,这边说下:上拉加载更多、下拉刷新(点击刷新、置顶,浮框设计)、网络请求、预览图片、拓展组件&#xff08…

JAVA在Spring框架多线程时调用服务类方法

一 Spring框架多线程调用服务类的方法 我们在开发Web的项目时,有时候我们想在线程的环境下使用Service或Component 注解的服务类方法,多线程下是不能直接调用,以下总结一些常用的技巧转换成可调用的形式。 二 Spring框架下多线程下调用动态…

高中数学:平面向量-数乘运算

一、定义 顾名思义 向量的数乘运算,就是数量与向量相乘的运算 λ a → \mathop{a}\limits ^{\rightarrow} a→,λ∈R 二、λ a → \mathop{a}\limits ^{\rightarrow} a→的性质 1、长度 |λ|*| a → \mathop{a}\limits ^{\rightarrow} a→| |λ a …

【MySQL精通之路】SQL优化(1)-查询优化(8)-嵌套联接优化

主博客: 【MySQL精通之路】SQL优化(1)-查询优化-CSDN博客 上一篇: 【MySQL精通之路】SQL优化(1)-查询优化(7)-嵌套循环联接-CSDN博客 下一篇: 【MySQL精通之路】SQL优化(1)-查询优化(9)-外部联接优化-CSDN博客 与SQL标准相比&#xff0c…