求知 文章 文库 Lib 视频 iPerson 课程 认证 咨询 工具 讲座 Model Center   Code  
会员   
要资料
 
 
 

Javascript教程
Javascript语法
在浏览器启用Javascript
在HTML中配置Javascript
Javascript变量和数据类型
Javascript运算符
Javascript if...else 语句
Javascript Switch Case
Javascript while循环
Javascript for循环
Javascript for...in循环
Javascript循环控制
Javascript函数
Javascript事件
Javascript Cookies
Javascript页面重定向
Javascript对话框
Javascript void关键词
Javascript页面打印
Javascript对象
Javascript Number对象
Javascript Boolean对象
Javascript String对象
Javascript Arrays对象
Javascript Date对象
Javascript Math对象
正则表达式和RegExp对象
Javascript文档处理模型
Javascript错误和异常处理
Javascript表单验证
Javascript动画
 
 

JavaScript Switch Case
817 次浏览
46次  

可以使用多个if... else if语句,如前面的章节,执行多路分支。然而,这并不总是最佳的解决方案,尤其是当所有分支的依赖单一的变量的值。

使用JavaScript1.2开始,你可以用它处理的正是这种情况,使用一个switch语句,它这样做更有效,如果不是反复地使用if... else if语句。

语法

switch语句的基本语法给出一个expression ,以评估计算几种不同的语句基于该表达式的值来执行。解释器检查对表达式的值的每一种情况,直到找到一个匹配。如果没有匹配,则缺省(default)条件将被使用。

switch (expression)
{
  case condition 1: statement(s)
                    break;
  case condition 2: statement(s)
                    break;
   ...
  case condition n: statement(s)
                    break;
  default: statement(s)
}

break语句指示的解释器是特定情况下结束。如果它们被省略,则解释器将继续在以下每个情况(case)执行每个语句。

我们将解释break语句在循环控制这一章。

例子:

下面的例子说明了一个基本的while循环:

<script type="text/javascript">
<!--
var grade='A';
document.write("Entering switch block<br />");
switch (grade)
{
  case 'A': document.write("Good job<br />");
            break;
  case 'B': document.write("Pretty good<br />");
            break;
  case 'C': document.write("Passed<br />");
            break;
  case 'D': document.write("Not so good<br />");
            break;
  case 'F': document.write("Failed<br />");
            break;
  default:  document.write("Unknown grade<br />")
}
document.write("Exiting switch block");
//-->
</script>

这将产生以下结果:

Entering switch block  Good job  Exiting switch block

例子:

考虑这样一种情况,如果不使用break语句:

<script type="text/javascript"> <!-- var grade='A'; document.write("Entering switch block<br />"); switch (grade) { case 'A': document.write("Good job<br />"); case 'B': document.write("Pretty good<br />"); case 'C': document.write("Passed<br />"); case 'D': document.write("Not so good<br />"); case 'F': document.write("Failed<br />"); default: document.write("Unknown grade<br />") } document.write("Exiting switch block"); //--> </script>

这将产生以下结果:

Entering switch block  
Good job  
Pretty good  
Passed  Not 
so good  
Failed  
Unknown grade  
Exiting switch block 

 


您可以捐助,支持我们的公益事业。

1元 10元 50元





认证码: 验证码,看不清楚?请点击刷新验证码 必填



817 次浏览
46次
 捐助