当前位置:首页 > JavaScript

js实现switch

2026-02-02 02:29:32JavaScript

实现基本的 switch 语句

JavaScript 的 switch 语句根据表达式值与 case 标签的匹配执行代码块:

const fruit = 'apple';

switch (fruit) {
  case 'banana':
    console.log('This is a banana');
    break;
  case 'apple':
    console.log('This is an apple');
    break;
  default:
    console.log('Unknown fruit');
}

处理多个 case 共用逻辑

多个 case 可以共享同一段执行代码,省略 break 实现穿透效果:

js实现switch

const day = 3;

switch (day) {
  case 1:
  case 2:
  case 3:
  case 4:
  case 5:
    console.log('Weekday');
    break;
  case 6:
  case 7:
    console.log('Weekend');
    break;
}

使用表达式作为 case 条件

case 子句可以使用表达式,但会降低可读性:

js实现switch

const score = 85;

switch (true) {
  case score >= 90:
    console.log('A');
    break;
  case score >= 80:
    console.log('B');
    break;
  case score >= 70:
    console.log('C');
    break;
  default:
    console.log('D');
}

替代方案:对象字面量

对于简单值映射,对象字面量比 switch 更简洁:

const fruitMap = {
  apple: 'This is an apple',
  banana: 'This is a banana',
  default: 'Unknown fruit'
};

console.log(fruitMap[fruit] || fruitMap.default);

替代方案:Map 数据结构

使用 Map 对象可以实现更复杂的逻辑处理:

const fruitHandler = new Map([
  ['apple', () => console.log('Apple handler')],
  ['banana', () => console.log('Banana handler')],
  [Symbol.for('default'), () => console.log('Default handler')]
]);

(fruitHandler.get(fruit) || fruitHandler.get(Symbol.for('default')))();

标签: jsswitch
分享给朋友:

相关文章

js实现分页

js实现分页

分页的基本实现思路 在JavaScript中实现分页功能通常需要结合前端和后端逻辑。前端负责渲染分页控件和处理用户交互,后端负责提供分页数据。 前端分页实现 纯前端分页适用于数据量较小的情况,可以…

js实现全选

js实现全选

实现全选功能的方法 在JavaScript中实现全选功能通常涉及监听全选复选框的点击事件,并根据其状态控制其他复选框的选中状态。以下是几种常见的实现方式: 基础DOM操作实现 通过获取所有目标复选框…

js实现日历

js实现日历

实现日历的基本思路 使用JavaScript实现日历的核心是动态生成日期表格,并处理月份切换逻辑。需要计算当前月的天数、起始星期几,并动态渲染到页面上。 获取当前日期信息 通过Date对象获取当前…

js实现论坛

js实现论坛

实现论坛的基本功能 使用JavaScript实现一个论坛需要结合前端和后端技术。前端可以使用React、Vue或Angular等框架,后端可以选择Node.js配合Express或Koa框架。数据库可…

js树实现

js树实现

树的基本概念 树是一种非线性的数据结构,由节点和边组成。每个节点包含一个值和指向子节点的引用。树的顶部节点称为根节点,没有子节点的节点称为叶节点。 树的实现方式 在JavaScript中,树可以通过…

js实现目录

js实现目录

实现目录的基本思路 在JavaScript中实现目录功能通常涉及以下几个核心步骤:解析文档中的标题元素(如h1-h6),动态生成目录结构,并添加交互逻辑(如点击跳转)。以下是具体实现方法: 解析标题…