JavaScript编程精解(原书第3版)
上QQ阅读APP看书,第一时间看更新

2.15 使用switch调度值

如下代码所示的情况并不少见:

为了以更直接的方式表达这种“调度”,人们设计了一个叫作switch的结构。不幸的是,JavaScript用于此的语法(它从C/Java系列的编程语言中继承的)有点笨拙——一连串的if语句可能看起来更好。下面是一个示例:

你可以将任意数量的case标签放在通过switch开启的块内。程序将从与提供给switch的值对应的标签处开始执行,或者如果未找到匹配值,则在default处开始执行。它将继续执行,甚至跨其他标签执行,直到它遇到break语句为止。在某些情况下,例如示例中的"sunny"情况,这可用于在case之间共享一些代码(建议在阳光明媚(sunny)和多云(cloudy)的天气外出)。但要小心——很容易忘记这样的break,这将导致程序执行你不希望执行的代码。