JavaScript 是一种动态类型语言,它有多种数据类型,包括基本数据类型和复杂数据类型。在本章中,我们将深入了解 JavaScript 的数据类型。
JavaScript 有七种原始(primitive)数据类型和一种引用(reference)数据类型。以下是它们的简要说明:
原始数据类型
boolean
:- 表示逻辑值,可以是
true
或false
。
- 表示逻辑值,可以是
null
:- 表示空值或无值。它是一个表示“没有对象值”的特殊值。
undefined
:- 表示变量已声明但未赋值的状态。
number
:- 用于表示整数和浮点数。JavaScript 中所有数字都是以64位浮点格式存储的,包括整数。
- 特殊数值包括
Infinity
,-Infinity
, 和NaN
(Not-a-Number)。
bigint
:- 用于表示比
Number
类型所能表示的范围更大的整数。使用后缀n
来定义。
- 用于表示比
string
:- 用于表示文本数据。字符串可以由单引号、双引号或反引号(模板字符串)包围。
symbol
(ES6 引入):- 用于创建唯一的标识符,常用于对象属性的键,确保不会与其他属性名冲突。
引用数据类型
object
:- 用于存储集合数据,如数组、对象字面量、函数(在 JavaScript 中,函数也是对象)、日期等。对象是一组无序的键值对。
检查数据类型
- 使用
typeof
运算符来检查一个值的数据类型。需要注意的是,typeof null
返回"object"
,这被认为是语言的一个历史遗留问题。
console.log(typeof true); // "boolean" console.log(typeof 42); // "number" console.log(typeof 'hello'); // "string" console.log(typeof {}); // "object" console.log(typeof null); // "object" (这是一个异常) console.log(typeof undefined); // "undefined" console.log(typeof Symbol()); // "symbol" console.log(typeof 123n); // "bigint"