原生js witch语句

2023-10-19 10:59
文章标签 js 语句 原生 witch

本文主要是介绍原生js witch语句,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

一、我们在流判断的时候,我们大多数的情况我使用if  else 语句。但是对于一些大量的逻辑的判断的时候,我们不建议使用if elseif语句 这种语句的效率执行不高,因为他每个expression 都需要进行计算判断,而switch case语句,在效率上更比if语句更高

其原理他本身根据生成的静态表,通过索引进行匹配效率高于if语句。

执行流程:

switch (expression){

case value1:

statement

break

case value2:

statement

break

.......

default:

statement

}

首先执行switch内的expression,计算值,然后进行case进行判断。匹配到case,执行对应的statement  如果有break,则跳出switch语句,如果没有则执行剩下的case语句,最后执行default 内的语句。如果带有break的,当匹配执行完case的时候,不会执行default 语句。如果

没有匹配到case最后执行default语句。

需要注意:switch语句的case匹配是全等匹配。不存在类型转换这点不同于if语句。

复制代码
 1 <!DOCTYPE html>2 <html>3 <head>4     <title></title>5 </head>6 <body>7 <script type="text/javascript">8     var  date=new Date();9     switch(date.getDate()){
10         case 1:
11         alert(1);
12         case 2:
13         alert(2);
14         case 3:
15         alert(3);
16         case 4:
17         alert(4)
18         case 5:
19         alert(5)
20         default:
21         alert('default')
22     }
23 </script>
24 </body>
25 </html>
复制代码

 

如上switch语句,如果没有break的语句。在执行完的匹配的执行语句的时候,还会执行default语句。

加上break则匹配到case语句之后,不会执行default语句。此时default语句相当于if中的else部分。

复制代码
 1 <!DOCTYPE html>2 <html>3 <head>4     <title></title>5 </head>6 <body>7 <script type="text/javascript">8     var  date=new Date();9     switch(date.getDate()){
10         case 1:
11         alert(1);
12         break;
13         case 2:
14         alert(2);
15         break;
16         case 3:
17         alert(3);
18         break;
19         case 4:
20         alert(4);
21         break;
22         case 5:
23         alert(5);
24         break;
25         default:
26         alert('default')
27     }
28 </script>
29 </body>
30 </html>
复制代码

 

一般的情况下 我们会用switch做一些值 的判断,当然我们可以进行逻辑的判断

复制代码
 1 <!DOCTYPE html>2 <html>3 <head>4     <title></title>5 </head>6 <body>7 <script type="text/javascript">8 var num=24;9 switch(true){
10     case num>24:
11     alert("大于24!");
12     break;
13     case num<24&&num>20:
14     alert("大约20,小于24!");
15     break;
16     case num===24:
17     alert("等于24");
18     break;
19     default:
20     alert("判断不了")
21 }
22 </script>
23 </body>
24 </html>

转载于:https://www.cnblogs.com/tyblwmbs/p/10909875.html

这篇关于原生js witch语句的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/239317

相关文章

JS常用组件收集

收集了一些平时遇到的前端比较优秀的组件,方便以后开发的时候查找!!! 函数工具: Lodash 页面固定: stickUp、jQuery.Pin 轮播: unslider、swiper 开关: switch 复选框: icheck 气泡: grumble 隐藏元素: Headroom

在JS中的设计模式的单例模式、策略模式、代理模式、原型模式浅讲

1. 单例模式(Singleton Pattern) 确保一个类只有一个实例,并提供一个全局访问点。 示例代码: class Singleton {constructor() {if (Singleton.instance) {return Singleton.instance;}Singleton.instance = this;this.data = [];}addData(value)

Node.js学习记录(二)

目录 一、express 1、初识express 2、安装express 3、创建并启动web服务器 4、监听 GET&POST 请求、响应内容给客户端 5、获取URL中携带的查询参数 6、获取URL中动态参数 7、静态资源托管 二、工具nodemon 三、express路由 1、express中路由 2、路由的匹配 3、路由模块化 4、路由模块添加前缀 四、中间件

EasyPlayer.js网页H5 Web js播放器能力合集

最近遇到一个需求,要求做一款播放器,发现能力上跟EasyPlayer.js基本一致,满足要求: 需求 功性能 分类 需求描述 功能 预览 分屏模式 单分屏(单屏/全屏) 多分屏(2*2) 多分屏(3*3) 多分屏(4*4) 播放控制 播放(单个或全部) 暂停(暂停时展示最后一帧画面) 停止(单个或全部) 声音控制(开关/音量调节) 主辅码流切换 辅助功能 屏

使用JS/Jquery获得父窗口的几个方法(笔记)

<pre name="code" class="javascript">取父窗口的元素方法:$(selector, window.parent.document);那么你取父窗口的父窗口的元素就可以用:$(selector, window.parent.parent.document);如题: $(selector, window.top.document);//获得顶级窗口里面的元素 $(

js异步提交form表单的解决方案

1.定义异步提交表单的方法 (通用方法) /*** 异步提交form表单* @param options {form:form表单元素,success:执行成功后处理函数}* <span style="color:#ff0000;"><strong>@注意 后台接收参数要解码否则中文会导致乱码 如:URLDecoder.decode(param,"UTF-8")</strong></span>

js react 笔记 2

起因, 目的: 记录一些 js, react, css 1. 生成一个随机的 uuid // 需要先安装 crypto 模块const { randomUUID } = require('crypto');const uuid = randomUUID();console.log(uuid); // 输出类似 '9b1deb4d-3b7d-4bad-9bdd-2b0d7b3dcb6d'

学习记录:js算法(二十八):删除排序链表中的重复元素、删除排序链表中的重复元素II

文章目录 删除排序链表中的重复元素我的思路解法一:循环解法二:递归 网上思路 删除排序链表中的重复元素 II我的思路网上思路 总结 删除排序链表中的重复元素 给定一个已排序的链表的头 head , 删除所有重复的元素,使每个元素只出现一次 。返回 已排序的链表 。 图一 图二 示例 1:(图一)输入:head = [1,1,2]输出:[1,2]示例 2:(图

uuid.js 使用

相关代码 import { NIL } from "uuid";/** 验证UUID* 为空 则返回 false* @param uuid* @returns {boolean}*/export function MyUUIDValidate(uuid: any): boolean {if (typeof uuid === "string" && uuid !== NIL) { //uuid

js定位navigator.geolocation

一、简介   html5为window.navigator提供了geolocation属性,用于获取基于浏览器的当前用户地理位置。   window.navigator.geolocation提供了3个方法分别是: void getCurrentPosition(onSuccess,onError,options);//获取用户当前位置int watchCurrentPosition(