当我们需要根据一个变量的不同取值执行不同的逻辑时,通常会使用 switch 语句。但是在某些情况下,可以使用对象字面量(即普通的 JavaScript 对象)来代替 switch 语句,使代码更加简洁和易于维护。

以下是一个使用对象字面量代替 switch 的例子:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
// 使用 switch 语句  
function getFruitColor(fruit) {
let color;
switch (fruit) {
case 'apple':
color = 'red';
break;
case 'banana':
color = 'yellow';
break;
case 'grape':
color = 'purple';
break;
default:
color = 'unknown';
}
return color;
}

// 使用对象字面量代替 switch
function getFruitColor(fruit) {
const fruitColors = {
apple: 'red',
banana: 'yellow',
grape: 'purple',
unknown: 'unknown'
};

return fruitColors[fruit] || fruitColors['unknown'];
}

console.log(getFruitColor('apple')); // 输出:"red"
console.log(getFruitColor('watermelon')); // 输出:"unknown"