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"