02变量与基本数据类型

一、变量

在 JavaScript 中,变量可以存储各种类型的数据,如数字、字符串、对象、函数等。

在 JavaScript 中创建一个变量,我们需要用到 let 关键字。

下面的语句创建(也可以称为 声明 或者 定义)了一个名称为 “message” 的变量:

1
let message;

我们可以通过赋值运算符 = 为变量添加一些数据:

1
2
3
let message;

message = "Hello!";

二、常量

声明一个常数(不变)变量,可以使用 const 而非 let

一个普遍的做法是将常量用作别名,以便记住那些在执行之前就已知的难以记住的值。

使用大写字母和下划线来命名这些常量。

例如,让我们以所谓的“web”(十六进制)格式为颜色声明常量:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
<!DOCTYPE html>
<script>
"use strict";

const COLOR_RED = "#F00";
const COLOR_GREEN = "#0F0";
const COLOR_BLUE = "#00F";
const COLOR_ORANGE = "#FF7F00";

// ……当我们需要选择一个颜色
let color = COLOR_ORANGE;
alert(color); // #FF7F00

</script>

三、数据类型

在 JavaScript 中有 8 种基本的数据类型(7 种原始类型和 1 种引用类型)。

值类型(基本类型):字符串(String)、数字(Number)、大数(BigInt)、布尔(Boolean)、空(Null)、未定义(Undefined)、Symbol。
引用数据类型(对象类型):对象(Object)、数组(Array)、函数(Function),还有两个特殊的对象:正则(RegExp)和日期(Date)。

JavaScript 拥有动态类型。这意味着相同的变量可用作不同的类型。在定义变量时无需思考应该选择哪种变量类型。变量的数据类型可以使用 typeof 操作符来查看:

1
2
3
4
5
6
7
8
9
typeof undefined // "undefined"
typeof 0 // "number"
typeof 10n // "bigint"
typeof true // "boolean"
typeof "foo" // "string"
typeof Symbol("id") // "symbol"
typeof Math // "object"
typeof null // "object"
typeof alert // "function"

Number

number 类型代表整数和浮点数。

数字可以有很多操作,比如,乘法 *、除法 /、加法 +、减法 - 等等。

除了常规的数字,还包括所谓的“特殊数值(“special numeric values”)”也属于这种类型:Infinity-Infinity 和 NaN

1
2
let n = 123;
n = 12.345;

BigInt

在 JavaScript 中,“number” 类型无法安全地表示大于25312^{53}-1(即 9007199254740991),或小于 (2531)-(2^{53}-1) 的整数。而 “bigint” 类型可以安全地表示任意长度的整数。

可以通过将 n 附加到整数字段的末尾来创建 BigInt 值。

1
2
// 尾部的 "n" 表示这是一个 BigInt 类型 
const bigInt = 1234567890123456789012345678901234567890n;

String

JavaScript 中的字符串必须被括在引号里。单引号、双引号、反引号都可以用来包含字符串。

1
2
3
let str = "Hello";
let str2 = 'Single quotes are ok too';
let phrase = `can embed another ${str}`;

其中,反引号是 功能扩展 引号。它们允许我们通过将变量和表达式包装在 ${…} 中,来将它们嵌入到字符串中。

Boolean

boolean 类型仅包含两个值:true 和 false

null值

特殊的 null 值不属于上述任何一种类型。它构成了一个独立的类型,只包含 null 值。

1
let age = null;

相比较于其他编程语言,JavaScript 中的 null 不是一个“对不存在的 object 的引用”或者 “null 指针”。

undefined值

undefined 的含义是 未被赋值

如果一个变量已被声明,但未被赋值,那么它的值就是 undefined

Object和Symbol

object 类型是一个特殊的类型。

其他所有的数据类型都被称为“原始类型”,因为它们的值只包含一个单独的内容(字符串、数字或者其他)。相反,object 则用于储存数据集合和更复杂的实体。

Author

WaterNorth

Posted on

2025-08-19

Updated on

2025-08-21

Licensed under