JavaScript typeof

摘要:在本教程中,您将学习如何使用 JavaScript typeof 运算符,它返回一个表示值类型的字符串。

JavaScript typeof 运算符简介

typeof 运算符接受一个操作数并返回一个表示操作数类型的字符串。以下是 typeof 运算符的语法

typeof(operand)Code language: JavaScript (javascript)

在此语法中,操作数 可以是值、变量 或表达式。或者,您可以像这样不带括号地使用 typeof 运算符

typeof operandCode language: JavaScript (javascript)

请注意,如果操作数 是一个表达式,则需要使用括号使语法有效。

JavaScript typeof 示例

以下示例展示了如何使用 typeof 运算符处理各种类型的值

let type;

type = typeof 'Hi';
console.log(type); // 'string'

type = typeof 100;
console.log(type); // 'number'

type = typeof 100n;
console.log(type); // 'bigint'

type = typeof false;
console.log(type); // 'boolean'

type = typeof Symbol('morning');
console.log(type); // 'symbol'


type = typeof undefined;
console.log(type); // 'undefined'


type = typeof new Date();
console.log(type); // 'object'Code language: JavaScript (javascript)

在 JavaScript 中,null 是 null 类型的原始值。但是,它的类型不是 null 而是 object,因为 JavaScript 将 null 视为一个空对象

type = typeof null;
console.log(type); // 'object'Code language: JavaScript (javascript)

从技术上讲,JavaScript 将函数视为对象。因此,它们的类型是'object'。但是,函数具有一些特殊属性,JavaScript 需要通过使用 typeof 运算符来区分函数和其他对象。例如

function add(x, y) {
  return x + y;
}

let type = typeof add;
console.log(type); // 'function';Code language: JavaScript (javascript)

JavaScrippt typeof 运算符 & 括号

将表达式传递给 typeof 运算符时,需要使用括号。例如

let type = typeof (100 + '10');
console.log(type);Code language: JavaScript (javascript)

输出

'string'Code language: JavaScript (javascript)

在此示例中,表达式 100 + '10' 返回字符串 '10010'。因此,它的类型是 'string'。如果您不使用括号,您将得到一个意外的结果。例如

let type = typeof 100 + '10';
console.log(type);Code language: JavaScript (javascript)

输出

'number10'Code language: JavaScript (javascript)

在此示例中,typeof 100 返回 'number'。因此,结果是字符串 'number''10' 的连接。

总结

  • 使用 JavaScript typeof 运算符获取一个表示值类型的字符串。
本教程对您有帮助吗?