ECMA中的switch语句
switch借鉴自其他语言,但也有自己的特色。
1、可以在switch语句中使用任何数据类型(数值、字符串、对象等),很多其他语言中只能使用数值。
2、每个case的值不一定是常量,可以是变量或者表达式。
例1:
1 switch ("hello world") {
2 case "hello" + "world" :
3 alert("Greeting was found.");
4 break;
5 case "goodbye" :
6 alert("Closing was found.");
7 break;
8 default:
9 alert("Unexpected message was found.");
10
11 }
运行结果:Greeting was found.
例2:
1 var num = 25;
2 switch (true) {
3 case num < 0:
4 alert("Less than 0.");
5 break;
6 case num >= 0 && num <= 10:
7 alert("Between 0 and 10.");
8 break;
9 case num >= 10 && num <= 20:
10 alert("Between 10 and 20.")
11 break;
12 default:
13 alert("More than 20.")
14 }
注:给case赋值true是因为每个case都会返回一个布尔值,这样每个case按照顺序被求值,直到找到匹配的值或者遇到default语句为止。
switch语句在比较值时使用的是全等操作符,不会发生类型转换(如字符串 ”10“ 不等于数值10)!
ECMA中的switch语句的更多相关文章
- Java中的switch语句后面的控制表达式的数据类型
Java中的switch语句后面的控制表达式的数据类型 1.byte 2.char 3.short 4.int 5.枚举类型 6.Java 7允许java.lang.String类型
- [译]Javascript中的switch语句
本文翻译youtube上的up主kudvenkat的javascript tutorial播放单 源地址在此: https://www.youtube.com/watch?v=PMsVM7rjupU& ...
- Java中的switch语句——通过示例学习Java编程(8)
作者:CHAITANYA SINGH 来源:https://www.koofun.com//pro/kfpostsdetail?kfpostsid=19 当我们在代码逻辑中有多个选项,而且需要为每个选 ...
- 通过字节码分析java中的switch语句
在一次做题中遇到了switch的问题,由于对switch执行顺序的不了解,在这里简单的通过字节码的方式理解一下switch执行顺序(题目如下): public class Ag{ static pub ...
- PHP:第二章——PHP中的switch语句
<?php header("Content-Type:text/html;charset=utf-8"); /* switch语句: */ //例1: /*$i = 99; ...
- c/c++排坑(3) -- c/c++中的switch语句
switch语句的简单介绍 一个 switch 语句允许测试一个变量等于多个值时的情况.每个值称为一个 case,且被测试的变量会对每个 switch case 进行检查. switch(expres ...
- C 语言中的 switch 语句 case 后面是否需要加大括号
事件原由为编辑器的自动缩进,当 case 换行后不自动缩进. 于是在在想可以可否在 case 后面再大括号,让其自动缩进. 查了资料,发现 case 是可以加大括号的,相当于代码块. 而且还有另外一个 ...
- Java中的switch语句
switch可以替代if..else..,另外据说switch采用二分搜索,效率会更高一点. switch(type) { case 1 : type_name="INCOMING" ...
- golang中使用switch语句根据年月计算天数
package main import "fmt" func main() { days := CalcDaysFromYearMonth(2021, 9) fmt.Println ...
随机推荐
- a chip multiprocessor
COMPUTER OR GANIZATION AND ARCHITECTURE DESIGNING FOR PERFORMANCE NINTH EDITION A multicore computer ...
- Spring mvc example
Spring mvc example 1.下载spring源包 spring地址:http://www.springsource.org/download 我下的是spring-framework-3 ...
- linux下文件搜索命令学习笔记
1. locate:按照文件名搜索文件 locate filename 与find在整个操作系统中遍历搜索不同,locate命令在/var/lib/mlocate这个后台数据库中按照文件名搜索,所以优 ...
- 【leedcode】 Longest Palindromic Substring
Given a , and there exists one unique longest palindromic substring. https://leetcode.com/problems/l ...
- 如何理解泛型中的new()约束
一:为什么需要New约束 假设有这样一个需求,它需要在定义一个泛型类时同时实例化T对象.有网友说了:"这还不简单,我立刻给你写一个",刷刷刷,得到以下的例子. public cla ...
- LeetCode Intersection of Two Arrays II
原题链接在这里:https://leetcode.com/problems/intersection-of-two-arrays-ii/ 题目: Given two arrays, write a f ...
- shell常用命令归类整理
shell 命令整理 bash shell 含有许多功能,因此有许多可用的命令:本文档仅罗列了一些常用命令及其使用频率较高的参数.#本文档仅罗列了一些常用命令及其使用频率较高的参数.#vers ...
- javascript中的闭包、模块与模块加载
一.前言 闭包是基于词法作用域( 和动态作用域对应,词法作用域是由你写代码时,将变量写在哪里来决定的,因此当词法分析器处理代码时,会保持作用)书写代码时所产生的自然结果,甚至不需要为了利用闭包而有意 ...
- SVN File Name Case Sensitivity--SVN大小写问题
from:http://www.visualsvn.com/support/topic/00019/ Windows has a case-insensitive file system. Unix ...
- Day 6