当前位置:  首页>> 技术小册>> 深入学习前端重构知识体系

JavaScript语法(二):你知道哪些JavaScript语句?

在深入探讨JavaScript的广阔世界时,掌握其核心语法结构——特别是各类语句(Statements)——是构建高效、可维护代码的关键。本章节将继续我们的JavaScript语法之旅,聚焦于JavaScript中不可或缺的语句类型,这些语句是编写程序逻辑、控制流程、以及执行各种操作的基础。我们将逐一解析这些语句,并通过示例加深理解。

1. 条件语句

条件语句允许程序根据条件表达式的真假值来执行不同的代码块。JavaScript中主要有if...elseswitch等条件语句。

1.1 if...else 语句

if...else语句是最基本的条件语句,用于基于条件执行不同的代码块。

  1. let score = 75;
  2. if (score >= 60) {
  3. console.log("及格");
  4. } else {
  5. console.log("不及格");
  6. }

此外,if语句还可以嵌套使用,以及配合else if来检查多个条件。

  1. let age = 20;
  2. if (age < 13) {
  3. console.log("儿童");
  4. } else if (age < 20) {
  5. console.log("青少年");
  6. } else {
  7. console.log("成年人");
  8. }
1.2 switch 语句

switch语句用于基于不同的情况执行不同的代码块,通常比多个if...else if语句更简洁易读。

  1. let day = new Date().getDay();
  2. switch (day) {
  3. case 0:
  4. console.log("星期日");
  5. break;
  6. case 1:
  7. console.log("星期一");
  8. break;
  9. // ... 其他情况
  10. default:
  11. console.log("未知");
  12. }

注意,每个case块后需要break语句来防止代码自动落入下一个case块。

2. 循环语句

循环语句允许代码块重复执行,直到满足特定条件为止。JavaScript提供了多种循环结构,包括forwhiledo...while以及ES6引入的for...offor...in

2.1 for 循环

for循环是最常用的循环结构之一,它包含初始化表达式、条件表达式和更新表达式。

  1. for (let i = 0; i < 5; i++) {
  2. console.log(i);
  3. }
2.2 while 循环

while循环在给定条件为真时重复执行代码块。

  1. let count = 0;
  2. while (count < 5) {
  3. console.log(count);
  4. count++;
  5. }
2.3 do...while 循环

while循环类似,但do...while循环至少会执行一次代码块,即使条件在第一次检查时为假。

  1. let count = 0;
  2. do {
  3. console.log(count);
  4. count++;
  5. } while (count < 5);
2.4 for...offor...in
  • for...of循环用于遍历可迭代对象(如数组、字符串、Map、Set等)的值。
  1. let fruits = ['Apple', 'Banana', 'Cherry'];
  2. for (let fruit of fruits) {
  3. console.log(fruit);
  4. }
  • for...in循环用于遍历对象的属性名(包括继承的可枚举属性)。
  1. let person = {fname:"John", lname:"Doe", age:25};
  2. for (let x in person) {
  3. console.log(x);
  4. }

3. 跳转语句

跳转语句用于改变代码的正常执行流程,包括breakcontinuereturn等。

3.1 break 语句

break语句用于立即退出循环或switch语句。

  1. for (let i = 0; i < 10; i++) {
  2. if (i === 5) {
  3. break; // 退出循环
  4. }
  5. console.log(i);
  6. }
3.2 continue 语句

continue语句用于跳过当前循环的剩余部分,并继续执行下一次循环迭代。

  1. for (let i = 0; i < 10; i++) {
  2. if (i % 2 === 0) {
  3. continue; // 跳过偶数
  4. }
  5. console.log(i);
  6. }
3.3 return 语句

return语句用于从函数返回一个值,并立即退出函数。

  1. function sum(a, b) {
  2. return a + b;
  3. }
  4. console.log(sum(5, 3)); // 输出: 8

4. 声明语句

声明语句用于在JavaScript中创建变量、函数等。

4.1 变量声明

JavaScript支持多种变量声明方式,包括varletconst

  • var(函数作用域)
  1. var x = 10;
  • let(块级作用域)
  1. let y = 20;
  • const(块级作用域,不可重新赋值)
  1. const PI = 3.14;
4.2 函数声明

函数声明定义了一个函数,可以指定参数和函数体。

  1. function greet(name) {
  2. console.log("Hello, " + name);
  3. }
  4. greet("Alice");

ES6还引入了箭头函数,提供了一种更简洁的函数书写方式。

  1. const greet = (name) => {
  2. console.log("Hello, " + name);
  3. };
  4. greet("Bob");
  5. // 简写形式(当函数体只有一个表达式时)
  6. const greetShort = name => `Hello, ${name}`;
  7. console.log(greetShort("Charlie"));

5. 复合语句(块语句)

复合语句(或称为块语句)是由大括号{}包围的一组语句。它们通常与条件语句、循环语句、函数体等一起使用,以组织代码结构。

  1. if (true) {
  2. let x = 10;
  3. console.log(x);
  4. }
  5. for (let i = 0; i < 2; i++) {
  6. {
  7. let temp = i * 2;
  8. console.log(temp);
  9. }
  10. }

6. 异常处理语句

异常处理语句允许程序优雅地处理运行时错误,防止程序因未捕获的异常而完全崩溃。JavaScript使用try...catch...finally结构来实现。

  1. try {
  2. // 尝试执行的代码
  3. throw new Error("出错了!");
  4. } catch (error) {
  5. // 处理错误的代码
  6. console.error("捕获到错误:", error.message);
  7. } finally {
  8. // 无论是否发生错误都会执行的代码
  9. console.log("执行完毕");
  10. }

结语

JavaScript的语句是构建程序逻辑和流程控制的基础。通过掌握条件语句、循环语句、跳转语句、声明语句、复合语句以及异常处理语句,你可以编写出更加高效、灵活和健壮的JavaScript代码。希望本章内容能够帮助你深入理解JavaScript的语法结构,为你在前端开发领域的进一步探索打下坚实的基础。


该分类下的相关小册推荐: