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 语句和函数语句中,不能用于其他语句中。
  • 标签语句不是语句块,不能定义变量或函数。
  • 在使用标签语句时,应该避免过度使用,以免降低代码的可读性和可维护性。
相关推荐
爱笑的k113 小时前
nano-vllm 源码剖析:千行 Python 手写离线推理引擎的调度、显存与并行时序
开发语言·python·vllm
code_Bo3 小时前
不只命令行:我把跨 Agent 会话同步做成了桌面应用
前端·javascript·后端
kyriewen3 小时前
AI 能把页面写出来,为什么改个需求就开始崩?
前端·javascript·人工智能
OpsEye3 小时前
同一套用例跑两个大模型接口,差异到底出在哪
javascript·ai编程
X1A0RAN4 小时前
PPT 图片批量处理教程:导出全部幻灯片 · 提取全部素材
开发语言·javascript·powerpoint
量化分析码农5 小时前
股票历史数据的复权参数对照:多级别返回的字段与数值差异
java·javascript·后端
熊猫钓鱼>_>5 小时前
普通用户视角的端侧智能体验手记【鸿蒙心迹】
开发语言·人工智能·华为·智能手机·性能优化·ai编程·harmonyos
瑞雪兆丰年兮5 小时前
JavaWeb-day13-SpringBootWeb事务管理&AOP
java·开发语言·springboot·javaweb·事务·web·aop
天才熊猫君6 小时前
给 Vue 的 reactive 套 Proxy,为什么响应式会失灵?
前端·javascript
布莱克6057 小时前
Swift 常量详解:从 let 到编译期优化
服务器·开发语言·ssh·swift·常量·let