博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
switch语句的技巧
阅读量:7100 次
发布时间:2019-06-28

本文共 1336 字,大约阅读时间需要 4 分钟。

switch语句的技巧

概述

switch语句对一个表达式求值,将结果与 case 子语句比较,如果匹配,则从 case 处的语句向下执行。

语法

break;语句是可选择的,如果遇到break;则会跳出整个switch语句。如果没有任何case匹配,则进入到default:的分支。default:分支也是可选的。

switch (expression) {  case value1:    // 当 expression 的结果与 value1 匹配时,从此处开始执行    statements1;    [break;]  case value2:    // 当 expression 的结果与 value2 匹配时,从此处开始执行    statements2;    [break;]  ...  case valueN:    // 当 expression 的结果与 valueN 匹配时,从此处开始执行    statementsN;    [break;]  default:    // 如果 expression 与上面的 value 值都不匹配时,执行此处的语句    statements_def;    [break;]}

switch语句的技巧

case中使用条件判断

看看下面的代码,当foo为0,1,2,3的时候显示alert。

var foo = 1;switch (foo) {    case 0:    case 1:    case 2:    case 3:        alert('yes');        break;    default:        alert('not');}

有没有更好的写法呢?下面这个显然更简洁清晰啊。

var foo = 1;switch (true) { // 非变量 TRUE 替代 foo    case foo >= 0 && foo <= 3:        alert('yes');        break;    default:        alert('not');}

表示等级

精心设计的switch把_最少最稀有的条件_在上面,普通的条件放在相对下面的位置

function rankProgrammer(rank){     switch(rank){       case "高级":         this.secretary = true;      case "中级":         this.laptop = true;        this.bonus = true;      case "初级":         this.salary = true;        this.vacation = true;     }}var xiaohu=new rankProgrammer("高级");console.log(xiaohu);

上面这段程序显示出“高级”程序猿拥有所有的待遇,而初级程序员只有工资和假期。

我的微信号

转载于:https://www.cnblogs.com/xiaohu1986/p/5203996.html

你可能感兴趣的文章
VC++:ActiveX Test Container
查看>>
iOS知识点汇总
查看>>
butterknife用法总结
查看>>
Win8 Metro(C#)数字图像处理--2.55OSTU法图像二值化
查看>>
ReactiveCocoa 中 RACSignal 所有变换操作底层实现分析(上)
查看>>
Service Fabric本地开发部署修改数据目录
查看>>
php面试题
查看>>
Hexo NexT 博客本地搭建指南
查看>>
快速使用CSS Grid布局,实现响应式设计
查看>>
这并不是习惯,而是忍耐力变强了
查看>>
NAS是什么
查看>>
2018-04-12
查看>>
linux内核支持U-disk和U转串
查看>>
PHP服务器端API原理及示例讲解(接口开发)
查看>>
erlang遍历目录
查看>>
Stanford CS231n实践笔记(课时14卷积神经网络详解 上)
查看>>
文章标题
查看>>
MQ与webservice的区别,MQ的区别
查看>>
JS实现图片base64转blob对象,压缩图片,预览图片,图片旋转到正确角度
查看>>
『TensorFlow』生成式网络中的图片预处理
查看>>