热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

07JavaScript流程控制分支

文章目录1.流程控制2.顺序流程控制3.分支流程控制if语句3.1.分支结构3.2.if语句3.3.ifelse语句(双分支语句)3.4.ifelsei


文章目录

  • 1.流程控制
  • 2.顺序流程控制
  • 3.分支流程控制 if 语句
    • 3.1.分支结构
    • 3.2.if 语句
    • 3.3.if else 语句(双分支语句)
    • 3.4.if else if 语句(多分支语句)
  • 4.三元表达式
  • 5.分支流程控制 switch 语句
    • 5.1.switch语句
    • 5.2.switch 语句和 if else if 语句的区别




1.流程控制


  • 流程控制主要有三种结构,分别是顺序结构、分支结构和循环结构,这三种结构代表三种代码执行的顺序。
    在这里插入图片描述

2.顺序流程控制


  • 顺序结构是程序中最简单、最基本的流程控制,它没有特定的语法结构,程序会按照代码的先后顺序,依次执行,程序中大多数的代码都是这样执行的。
    在这里插入图片描述

3.分支流程控制 if 语句


3.1.分支结构


  • 由上到下执行代码的过程中,根据不同的条件,执行不同的路径代码(执行代码多选一的过程),从而得到不同的结果
    在这里插入图片描述
  • JS 语言提供了两种分支结构语句
    1 if 语句
    2 switch 语句

3.2.if 语句

在这里插入图片描述

1.if 的语法结构if (条件表达式) {执行语句}2.执行思路如果条件表达式为真&#xff0c;则执行大括号里面的执行语句&#xff1b;若条件表达式为假&#xff0c;则不执行大括号里面的执行语句&#xff0c;则执行if语句后面的代码。3.代码体验if (3 < 5) {alert("快乐老家");}

3.3.if else 语句&#xff08;双分支语句&#xff09;

在这里插入图片描述

1.if else 语法结构if (条件表达式) {执行语句1} else {执行语句2}2.执行思路如果条件表达式结果为真&#xff0c;则执行语句1&#xff0c;否则执行语句23.代码体验var age &#61; prompt(&#39;请输入您的年龄&#xff1a;&#39;);if (age >&#61; 18) {alert(&#39;来和我谈恋爱吧&#xff01;&#39;);} else {alert(&#39;好好学习哦^^&#39;);}4.语句1和语句2&#xff0c;最终只能有一个语句执行&#xff0c;即215.else里面直接跟大括号。

3.4.if else if 语句(多分支语句)

在这里插入图片描述

1. if else if 语法结构if (条件1) {执行语句1} else if (条件2) {执行语句2} else if (条件3) {执行语句3} else {执行语句4}2. 最后只执行一个语句

4.三元表达式


  • 三元表达式也能做一些简单的条件选择。 有三元运算符组成的式子称为三元表达式。

1.语法结构表达式1 ? 表达式2 : 表达式3;2.执行思路如果表达式1true&#xff0c;则返回表达式2的值&#xff1b;如果表达式1false&#xff0c;则返回表达式2。简单理解&#xff1a;类似于 if else 双分支的简写。3.代码体验用户输入数字&#xff0c;如果数字小于10&#xff0c;则在前面补 0 &#xff0c;比如01&#xff0c;09 &#xff0c;如果数字大于10&#xff0c;则不需要补&#xff0c;比如 20var number &#61; prompt(&#39;请输入一个数字&#39;);var result &#61; number < 10 ? &#39;0&#39; &#43; number : number;alert(result);

5.分支流程控制 switch 语句


5.1.switch语句

1.switch语句也是多分支语句&#xff0c;也可以实现多选一&#xff0c;它用于基于不同的条件来执行不同的代码。当要针对变量设置一系列的特定值的选项时&#xff0c;就可以使用switch2.语法结构switch (表达式) {case value1:执行语句1;break;case value2:执行语句2;break;...default:执行最后的语句;}3.执行思路利用表达式的值和case后面的选项值进行匹配&#xff0c;如果匹配得上&#xff0c;就执行case里面的语句&#xff1b;如果没有匹配上&#xff0c;就执行default里面的语句。4.注意事项1 开发里面&#xff0c;表达式常写成变量。2 表达式的值和case后面的选项值进行匹配时&#xff0c;需要是全等关系&#xff0c;必须值和数据类型都一致才行。3 如果当前的case里面没有break&#xff0c;则不会推出switch&#xff0c;而是进行下一个case5.代码体验用户在弹出框里面输入一个水果&#xff0c;如果有就弹出该水果的价格&#xff0c; 如果没有该水果就弹出“没有此水果”。伪代码&#xff1a;① 弹出 prompt 输入框&#xff0c;让用户输入水果名称&#xff0c;把这个值取过来保存到变量中。② 将这个变量作为 switch 括号里面的表达式。③ case 后面的值写几个不同的水果名称&#xff0c;注意一定要加引号 &#xff0c;因为必须是全等匹配。④ 弹出不同价格即可。同样注意每个 case 之后加上 break &#xff0c;以便退出 switch 语句。⑤ 将 default 设置为没有此水果。真代码:var question&#61; prompt(&#39;小弗&#xff0c;你想我吗&#xff1f;&#39;);switch (question) {case &#39;想&#39;:alert(&#39;我也好想你啊╥﹏╥...&#39;);break;case &#39;不想&#39;:alert(&#39;可是我好想你&#39;)break;default:alert(&#39;乌乌想你想你&#39;);}

5.2.switch 语句和 if else if 语句的区别


  • ① 一般情况下&#xff0c;它们两个语句可以相互替换
  • ② switch…case 语句通常处理 case为比较确定值的情况&#xff0c; 而 if…else…语句更加灵活&#xff0c;常用于范围判断(大于、等于某个范围)
  • ③ switch 语句进行条件判断后直接执行到程序的条件语句&#xff0c;效率更高。而if…else 语句有几种条件&#xff0c;就得判断多少次。
  • ④ 当分支比较少时&#xff0c;if… else语句的执行效率比 switch语句高。
  • ⑤ 当分支比较多时&#xff0c;switch语句的执行效率比较高&#xff0c;而且结构更清晰。

推荐阅读
  • 本文讨论了在手机移动端如何使用HTML5和JavaScript实现视频上传并压缩视频质量,或者降低手机摄像头拍摄质量的问题。作者指出HTML5和JavaScript无法直接压缩视频,只能通过将视频传送到服务器端由后端进行压缩。对于控制相机拍摄质量,只有使用JAVA编写Android客户端才能实现压缩。此外,作者还解释了在交作业时使用zip格式压缩包导致CSS文件和图片音乐丢失的原因,并提供了解决方法。最后,作者还介绍了一个用于处理图片的类,可以实现图片剪裁处理和生成缩略图的功能。 ... [详细]
  • 本文介绍了闭包的定义和运转机制,重点解释了闭包如何能够接触外部函数的作用域中的变量。通过词法作用域的查找规则,闭包可以访问外部函数的作用域。同时还提到了闭包的作用和影响。 ... [详细]
  • VScode格式化文档换行或不换行的设置方法
    本文介绍了在VScode中设置格式化文档换行或不换行的方法,包括使用插件和修改settings.json文件的内容。详细步骤为:找到settings.json文件,将其中的代码替换为指定的代码。 ... [详细]
  • 本文介绍了一个Java猜拳小游戏的代码,通过使用Scanner类获取用户输入的拳的数字,并随机生成计算机的拳,然后判断胜负。该游戏可以选择剪刀、石头、布三种拳,通过比较两者的拳来决定胜负。 ... [详细]
  • 开发笔记:加密&json&StringIO模块&BytesIO模块
    篇首语:本文由编程笔记#小编为大家整理,主要介绍了加密&json&StringIO模块&BytesIO模块相关的知识,希望对你有一定的参考价值。一、加密加密 ... [详细]
  • 如何使用Java获取服务器硬件信息和磁盘负载率
    本文介绍了使用Java编程语言获取服务器硬件信息和磁盘负载率的方法。首先在远程服务器上搭建一个支持服务端语言的HTTP服务,并获取服务器的磁盘信息,并将结果输出。然后在本地使用JS编写一个AJAX脚本,远程请求服务端的程序,得到结果并展示给用户。其中还介绍了如何提取硬盘序列号的方法。 ... [详细]
  • 本文讨论了一个关于cuowu类的问题,作者在使用cuowu类时遇到了错误提示和使用AdjustmentListener的问题。文章提供了16个解决方案,并给出了两个可能导致错误的原因。 ... [详细]
  • 本文介绍了在Mac上搭建php环境后无法使用localhost连接mysql的问题,并通过将localhost替换为127.0.0.1或本机IP解决了该问题。文章解释了localhost和127.0.0.1的区别,指出了使用socket方式连接导致连接失败的原因。此外,还提供了相关链接供读者深入了解。 ... [详细]
  • Java学习笔记之面向对象编程(OOP)
    本文介绍了Java学习笔记中的面向对象编程(OOP)内容,包括OOP的三大特性(封装、继承、多态)和五大原则(单一职责原则、开放封闭原则、里式替换原则、依赖倒置原则)。通过学习OOP,可以提高代码复用性、拓展性和安全性。 ... [详细]
  • Go Cobra命令行工具入门教程
    本文介绍了Go语言实现的命令行工具Cobra的基本概念、安装方法和入门实践。Cobra被广泛应用于各种项目中,如Kubernetes、Hugo和Github CLI等。通过使用Cobra,我们可以快速创建命令行工具,适用于写测试脚本和各种服务的Admin CLI。文章还通过一个简单的demo演示了Cobra的使用方法。 ... [详细]
  • 本文介绍了2015年九月八日的js学习总结及相关知识点,包括参考书《javaScript Dom编程的艺术》、js简史、Dom、DHTML、解释型程序设计和编译型程序设计等内容。同时还提到了最佳实践是将标签放到HTML文档的最后,并且对语句和注释的使用进行了说明。 ... [详细]
  • 本文介绍了禅道作为一款国产开源免费的测试管理工具的特点和功能,并提供了禅道的搭建和调试方法。禅道是一款B/S结构的项目管理工具,可以实现组织管理、后台管理、产品管理、项目管理和测试管理等功能。同时,本文还介绍了其他软件测试相关工具,如功能自动化工具和性能自动化工具,以及白盒测试工具的使用。通过本文的阅读,读者可以了解禅道的基本使用方法和优势,从而更好地进行测试管理工作。 ... [详细]
  • CCNP交换实验(VLAN/VTP/DHCP)
    实验要求:本拓扑按典型中小企业网分支-总部-分支结构模拟,总部核心路由为C3550,外联网通过OSPF协议,内联网通过VTP ... [详细]
  • JAVA流程控制结构在java中有三种流程控制结构:顺序结构,选择结构,循环结构顺序结构:顺序结构,是指程序从 ... [详细]
  • 本文介绍了Foundation框架中一些常用的结构体和类,包括表示范围作用的NSRange结构体的创建方式,处理几何图形的数据类型NSPoint和NSSize,以及由点和大小复合而成的矩形数据类型NSRect。同时还介绍了创建这些数据类型的方法,以及字符串类NSString的使用方法。 ... [详细]
author-avatar
蓝善凡_407
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有