JavaScript 语言基础之标签语句

标签语句的语法

javascript 复制代码
label: statement

label 表示标签名,可以是任何合法的标识符,但不能是 JavaScript 中的保留字。statement 表示被标记的语句块,可以是任何合法的 JavaScript 语句。

用法

标签语句的主要用途是在代码中进行跳转,可以配合 break、continue、return 等语句使用。

break 语句配合标签语句使用

当在嵌套的循环语句中使用 break 语句时,只能跳出当前的循环,无法跳出外层循环。但是,如果在外层循环前加上一个标签,就可以在内层循环中使用 break 语句跳出外层循环。

javascript 复制代码
outer:
for (let i = 0; i < 10; i++) {
  for (let j = 0; j < 10; j++) {
    if (i * j === 25) {
      break outer;
    }
  }
}

continue 语句配合标签语句使用

类似地,当在嵌套的循环语句中使用 continue 语句时,只能跳过当前的循环,无法跳过外层循环。但是,如果在外层循环前加上一个标签,就可以在内层循环中使用 continue 语句跳过外层循环的某次迭代。

return 语句配合标签语句使用

在 JavaScript 中,return 语句只能用于函数中,用于返回函数的执行结果。但是,如果在函数前加上一个标签,就可以在函数内部使用 return 语句跳出函数,并返回一个指定的值。

javascript 复制代码
function foo() {
  bar:
  {
    console.log('before return');
    return 123;
    console.log('after return');
  }
}

console.log(foo()); // 输出 123

注意事项

  • 标签语句只能用于循环语句、switch 语句和函数语句中,不能用于其他语句中。
  • 标签语句不是语句块,不能定义变量或函数。
  • 在使用标签语句时,应该避免过度使用,以免降低代码的可读性和可维护性。
相关推荐
英俊潇洒美少年几秒前
React 实现 AI 流式打字机对话:SSE 分包粘包处理 + 并发优化
前端·javascript·react.js
数据知道7 分钟前
claw-code 源码分析:大型移植的测试哲学——如何用 unittest 门禁守住「诚实未完成」的口碑?
开发语言·python·ai·claude code·claw code
小堃学编程16 分钟前
【项目实战】基于protobuf的发布订阅式消息队列(2)—— 线程池
java·开发语言
每日任务(希望进OD版)22 分钟前
线性DP、区间DP
开发语言·数据结构·c++·算法·动态规划
怨言.23 分钟前
Java内部类详解:从基础概念到实战应用(附案例)
java·开发语言
AC赳赳老秦24 分钟前
OpenClaw image-processing技能实操:批量抠图、图片尺寸调整,适配办公需求
开发语言·前端·人工智能·python·深度学习·机器学习·openclaw
XiYang-DING25 分钟前
【Java】 Java 集合框架
java·开发语言
charlie11451419126 分钟前
嵌入式C++教程实战之Linux下的单片机编程(9):HAL时钟使能 —— 不开时钟,外设就是一坨睡死的硅
linux·开发语言·c++·单片机·嵌入式硬件·c
叫我一声阿雷吧28 分钟前
JS 入门通关手册(44):宏任务 / 微任务 / Event Loop(前端最难核心,面试必考
javascript·宏任务·event loop· 前端面试· 微任务· 事件循环·js单线程
diving deep30 分钟前
从零构建大模型--实操--搭建python环境
开发语言·python