zoukankan      html  css  js  c++  java
  • switch case

    本次随笔由一个例子引出~

    例1:var num = 18;

    switch(true) {
      case num < 0: alert('less than 0');break;
      case num >= 0 && num <= 10: alert('between 0 and 10');break;
      case num > 10 && num <=20: alert('between 10 and 20');break;
      default: alert('More than 20');
    }

    // 执行 alert('between 10 and 20')

    ----------------------------------------------------

    例2: var num = 18;

    switch(num) {
      case num < 0: alert('less than 0');break;
      case num >= 0 && num <= 10: alert('between 0 and 10');break;
      case num > 10 && num <=20: alert('between 10 and 20');break;
      default: alert('More than 20');
    }

    // 执行 alert('More than 20')

    解析:

    switch 语句中的每一种case的含义是:“如果表达式等于这个值(switch后面跟的表达式的值),则执行后面的语句”。而break关键字会导致代码执行流跳出switch语句。如果省略break关键字,就会导致执行完当前case后,继续执行下一个case。最后的default关键字则用在表达式不匹配前面任何一种情形的时候,执行机动代码(相当于else语句)。

    使用tips:

    1、可以在switch语句中使用任何数据类型(在很多其他语言中只能使用数值),无论是字符串还是对象都没有问题。

    2、每个case的值不一定是常量,可以是变量,甚至是表达式。

    3、注意switch比较的时候是通过值相等的方式,故例2输出的是default,因为各种case的值都是布尔值,而num是数值,不会相等。

    4、switch语句在比较值时使用的是全等操作符,因此不会发生类型转换,例如字符串‘10’不等于数值10。

    性能tips:

  • 相关阅读:
    Windows Phone 7 中常用Task
    设置Highchart柱子最大宽度( 让 highcharts支持maxPointWidth属性)
    Asp.Net MVC 使用FileResult导出Excel数据文件
    js获取网页高度
    使用window.addEventListener 和 window.attachEvent 判断浏览器
    slimscroll滚动条插件简单用法
    js中如何快速获取数组中的最大值最小值
    js 判断浏览器类型
    python使用ldap进行用户认证
    关于go声明切片的一些疑问
  • 原文地址:https://www.cnblogs.com/cheeseCatMiao/p/10921645.html
Copyright © 2011-2022 走看看