跳转至

JavaScript 基础:变量与数据类型

在本章中,我们将学习 JavaScript 中的变量声明和基本数据类型。变量是存储数据的容器,而数据类型则决定了变量可以存储什么样的数据。理解这些概念是掌握 JavaScript 的基础。

1. 变量声明

在 JavaScript 中,变量用于存储数据。我们可以使用 varletconst 关键字来声明变量。

1.1 var 关键字

var 是 JavaScript 中最早用于声明变量的关键字。它声明的变量是函数作用域的。

// 使用 var 声明变量
var name = "Alice";
console.log(name); // 输出: Alice

1.2 let 关键字

let 是 ES6 引入的关键字,用于声明块作用域的变量。与 var 不同,let 声明的变量只在声明它的块内有效。

// 使用 let 声明变量
let age = 25;
console.log(age); // 输出: 25

1.3 const 关键字

const 也是 ES6 引入的关键字,用于声明常量。常量一旦声明,其值就不能被重新赋值。

// 使用 const 声明常量
const PI = 3.14159;
console.log(PI); // 输出: 3.14159

2. 数据类型

JavaScript 是一种动态类型语言,这意味着变量的数据类型可以在运行时改变。JavaScript 中有以下几种基本数据类型:

2.1 数字(Number)

数字类型用于表示整数和浮点数。

// 数字类型
let integer = 42;
let float = 3.14;
console.log(integer); // 输出: 42
console.log(float);   // 输出: 3.14

2.2 字符串(String)

字符串类型用于表示文本数据。字符串可以用单引号、双引号或反引号括起来。

// 字符串类型
let greeting = "Hello, World!";
let name = 'Alice';
let message = `Hello, ${name}!`; // 使用模板字符串
console.log(greeting); // 输出: Hello, World!
console.log(message);  // 输出: Hello, Alice!

2.3 布尔值(Boolean)

布尔类型只有两个值:truefalse,通常用于条件判断。

// 布尔类型
let isJavaScriptFun = true;
let isLearningEasy = false;
console.log(isJavaScriptFun); // 输出: true
console.log(isLearningEasy);  // 输出: false

2.4 undefinednull

undefined 表示变量已声明但未赋值,而 null 表示变量没有值。

// undefined 和 null
let unassignedVar;
let emptyVar = null;
console.log(unassignedVar); // 输出: undefined
console.log(emptyVar);      // 输出: null

2.5 对象(Object)

对象是键值对的集合,用于存储复杂的数据结构。

// 对象类型
let person = {
    name: "Alice",
    age: 25,
    isStudent: true
};
console.log(person.name); // 输出: Alice
console.log(person.age);  // 输出: 25

2.6 数组(Array)

数组是一种特殊的对象,用于存储有序的数据集合。

// 数组类型
let fruits = ["Apple", "Banana", "Cherry"];
console.log(fruits[0]); // 输出: Apple
console.log(fruits[1]); // 输出: Banana

3. 类型转换

JavaScript 是一种弱类型语言,这意味着在某些情况下,JavaScript 会自动进行类型转换。

3.1 隐式类型转换

// 隐式类型转换
let num = 5;
let str = "10";
let result = num + str; // 数字 5 被转换为字符串 "5",然后与 "10" 拼接
console.log(result); // 输出: "510"

3.2 显式类型转换

// 显式类型转换
let strNum = "42";
let intNum = parseInt(strNum); // 将字符串转换为整数
console.log(intNum); // 输出: 42

4. 练习题

4.1 简单练习

  1. 声明一个变量 name 并赋值为你的名字,然后打印出来。
  2. 声明一个常量 PI 并赋值为 3.14159,然后打印出来。

4.2 中等练习

  1. 创建一个包含你最喜欢的三种颜色的数组,并打印出第二个颜色。
  2. 创建一个对象 car,包含属性 brandmodelyear,然后打印出 model

4.3 复杂练习

  1. 编写一个程序,将两个数字相加,并将结果转换为字符串后打印出来。
  2. 编写一个程序,创建一个包含多个对象的数组,每个对象代表一个人,包含 nameage 属性,然后打印出所有人的名字。

5. 总结

在本章中,我们学习了 JavaScript 中的变量声明和基本数据类型。以下是关键点总结:

  • 变量可以使用 varletconst 关键字声明。
  • letconst 是块作用域的,而 var 是函数作用域的。
  • JavaScript 的基本数据类型包括数字、字符串、布尔值、undefinednull、对象和数组。
  • JavaScript 是动态类型语言,支持隐式和显式类型转换。

通过掌握这些基础知识,你将能够更好地理解和编写 JavaScript 代码。继续练习和探索,你将很快成为一名熟练的 JavaScript 开发者!