《JavaScript switch 语句》

本文深入解析了JavaScript中的switch语句,详细介绍了其工作原理、如何基于不同条件执行特定代码块,以及如何使用default关键词处理未匹配的情况。通过具体示例展示了switch语句在日期判断等实际场景的应用。
摘要由CSDN通过智能技术生成

JavaScript switch 语句


switch 语句用于基于不同的条件来执行不同的动作。


JavaScript switch 语句

请使用 switch 语句来选择要执行的多个代码块之一。

switch(n)
{
    case 1:
        执行代码块 1
        break;
    case 2:
        执行代码块 2
        break;
    default:
        与 case 1 和 case 2 不同时执行的代码
}

工作原理:首先设置表达式 n(通常是一个变量)。随后表达式的值会与结构中的每个 case 的值做比较。如果存在匹配,则与该 case 关联的代码块会被执行。请使用 break 来阻止代码自动地向下一个 case 运行。

<script>
function myFunction(){
	var x;
	var d=new Date().getDay();
	switch (d){
  		case 0:x="今天是星期日";
    	break;
 		case 1:x="今天是星期一";
        break;
  		case 2:x="今天是星期二";
        break;
        case 3:x="今天是星期三";
   	 	break;
  		case 4:x="今天是星期四";
    	break;
  		case 5:x="今天是星期五";
        break;
  		case 6:x="今天是星期六";
    	break;
 	}
	document.getElementById("demo").innerHTML=x;
}
</script>

default 关键词

请使用 default 关键词来规定匹配不存在时做的事情:

<script>
function myFunction()
{
	var x;
	var d=new Date().getDay();
	switch (d)
    {
  		case 6:x="今天是星期六";
    	break;
  		case 0:x="今天是星期日";
    	break;
  		default:
    	x="期待周末";
  	}
	document.getElementById("demo").innerHTML=x;
}
</script>

笔记

一、

主要是为了补充当两种情况相同时,switch 语句的使用,当两种情况相同时,可以只在第二种情况中写要执行的代码,案例如下:

//测试 switch语句,当 两种情况相同时,比如下面的10或者11,都会走 alert("10或者11") 这里        
function testSwich() {
      var number = document.getElementById("test").value;
      number=parseInt(number);
      switch (number){
            case 1: alert(1);
            break;
            case 10:
            case 11:alert("10或者11"); //number = 10 或者 = 11执行相同的操作
            break;
            default :alert("既不是1,10,11");
      }
}

二、

主要是为了说明一下忘记写 break 时的情况。当忘记写 break 时,代码将会执行后面所有 case 分支里面的代码,前面的 case 会跳过案例如下:

// 测试不使用break跳出循环
function testSwichNotBreak() {
      var number = document.getElementById("test").value;
      number=parseInt(number);
      switch (number){
            case 1: document.write(number);
            case 2: document.write(number)
            case 3:document.write(number);
            case 4:document.write(number);
            case 5:document.write(number);
            default :document.write(number);
      }
}

三、

switch 中 case的判断是===的判断,即数据类型和值的双重判断,这点要注意。

另外switch的判断条件可以是String 、Number、Boolean、char、枚举、null、undefined

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值