语句和声明

js/statements2026-08-24 19:46:25

语句 是执行某种操作的完整指令,用分号(;)进行分隔。变量声明、条件语句、循环语句、表达式等都是语句。

由于自动分号补全,如果一条语句独占一行的话,那么分号是可以省略的(并不建议这么做)。但如果一行中有多条语句,那么这些语句必须以分号分开。

声明 是“绑定标识符到值”的过程,而语句则是“执行操作”的过程。术语“语句”和“声明”在 JavaScript 的正式语法中具有精确的含义,这会影响它们在代码中的位置。

声明

声明变量

  • let:声明一个块级作用域的本地变量,可同时将其初始化为一个值。

  • const:声明一个只读的命名常量。

声明函数

  • function:声明一个指定参数的函数。

  • function*:生成器函数使编写迭代器更容易。

  • async function:使用指定的参数声明一个异步函数。

  • async function*:异步生成器函数使编写异步迭代器更容易。

声明类

  • class:声明一个类。

声明模块

  • export:用来导出函数,以便这些函数能够被导入到外部模块或其他脚本中。

  • import:用来引入外部的模块或另一个脚本中导出的函数。

控制流程语句

控制函数

  • return:指定函数要返回的值。

控制循环

  • break:终止当前的循环,switch 或标签语句,使程序跳到终止的语句之后的语句执行。

  • continue:终止当前或标签循环的当前迭代,直接执行下一个迭代循环。

根据条件控制

  • if...else:如果指定的条件为真,则执行相匹配的一个语句;若为假,则执行另一个语句。

  • switch:计算表达式,将子句与表达式的值做匹配,执行与该值相关联的语句。

异常处理

  • throw:抛出一个用户定义的异常。

  • try...catch:标记一个语句块,并指定语句抛出异常时的错误处理代码。

迭代语句

循环

  • while:创建一个执行指定语句的循环,直到测试条件的求值为假。先对条件进行求值,再执行语句。

  • do...while:创建一个循环来执行指定语句,直到测试条件的求值为假。先执行语句,再对条件表达式求值,指定语句至少会执行一次。

  • for:创建一个由三个可选的表达式(用括号包裹,分号分割)组成的循环,并在循环体中执行语句。

遍历

  • for...in:无序遍历对象的可枚举属性。语句针对每个唯一的属性。

  • for...of:遍历可迭代对象(包括 数组、类数组对象、迭代器和生成器),对每个不同的属性的值,调用一个自定义的带有要执行的语句的迭代钩子。

  • for await...of:遍历异步可迭代对象、类数组对象、迭代器和生成器,对每个不同的属性的值,调用一个自定义的带有要执行的语句的迭代钩子。

其他语句

  • var:声明一个变量,可同时将其初始化为一个值。
    var 是一个语句,不是声明

  • 空语句:空语句,用于不在 JavaScript 语法期望有语句的地方提供语句。

  • 块语句:块语句,用于将零个或多个语句组合在一起。块由一对花括号括起来。

  • 表达式语句:表达式语句计算表达式的值并丢弃其结果。它允许表达式产生副作用,例如执行函数或更新变量。

  • debugger:调用可用的调试功能。如果没有调试功能可用,该语句不生效。

  • label:提供带标识的语句,与 break 或 continue 语句一起使用。

参考

语句和声明
https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Statements

本页目录