第四节JavaScript 条件语句、循环语句、break与continue语句

news2024/11/27 14:51:14

一、JavaScript条件语句

在通常的代码中,我们有一些需要决定执行不同动作,这就可以在代码中使用条件语句来完成。

下面是我们常使用的条件语句:

  1. if语句:只有当指定条件是true时,执行条件内代码。
  2. if…else语句:当条件为true时执行代码,当条件为false时执行其它代码。
  3. if…else if…else:使用该语句来选择多个代码块之一来执行。
  4. switch:使用该语句来选择多个代码块之一来执行。

1、if语句

只有当指定条件是true时,执行条件内代码。

语法:

if(condition){
	// 当条件为true时执行该区域代码
}

注意:请使用小写的if。如果使用了大写的IF会生成JavaScript错误。

实例:

if(time < 20){
x = “Good Day”;
}

即:当time小于20时,才会运行“x = “Good Day”;”代码。

2、if….else语句

当条件为true时执行代码,当条件为false时执行其它代码。

语法:

if(condition){
	// 当条件为true时执行该区域代码
} else {
	//当条件不为true时执行该区域代码
}

实例:

if (time<20) { 
  x="Good day"; 
} else { 
  x="Good evening"; 
}

        即:当time小于20时,才会运行“x = “Good Day”;”代码。当time不小于20时,会执行else中代码“x="Good evening";

”。

3、if….else if….else语句

使用该语句来选择多个代码块之一来执行

语法:

if (condition1) {
    当条件 1 为 true 时执行的代码
} else if (condition2) {
    当条件 2 为 true 时执行的代码
} else {
  当条件 1 和 条件 2 都不为 true 时执行的代码
}

实例:

if (time<10) { 
  document.write("<b>早上好</b>"); 
} else if (time>=10 && time<20) { 
  document.write("<b>今天好</b>"); 
} else { 
  document.write("<b>晚上好!</b>"); 
}

        即:根据不同时间段,显示生成不同的问候语,当time小于10点之前,问候语时“早上好”,当time大于等于10 且小于20点时,问候语是“今天好”,当time大于等于20点时,问候语是“晚上好”。

5、switch语句

switch 语句用于基于不同的条件来执行不同的动作。

语法:

switch(n) {
 case 1: 
    // 执行代码块 1 
break; 
case 2: 
    // 执行代码块 2 
break; 
default: 
    // 非1和2时执行的代码 
}

注意:

设置表达式 n(通常是一个变量)。随后表达式的值会与结构中的每个 case 的值做比较。如果存在匹配,则与该 case 关联的代码块会被执行。请使用 break 来阻止代码自动地向下一个 case 运行。

实例:

<html>
<head>
<meta charset="utf-8">
<title>菜鸟教程(runoob.com)</title>
</head>
<body>

<p>点击下面的按钮,会显示出基于今日日期的消息:</p>
<button onclick="myFunction()">点击这里</button>
<p id="demo"></p>
<script>
function myFunction()
{
	var x;
	var d=new Date().getDay();
	switch (d)
    {
  		case 6:x="今天是星期六";
    	break;
  		case 0:x="今天是星期日";
    	break;
  		default:
    	x="期待周末";
  	}
	document.getElementById("demo").innerHTML=x;
}
</script>

</body>
</html>

二、JavaScript 循环

1、for循环

循环可以使某代码块指定循环的次数。

说明:

平时如果我们想打印出cars数组中6个数字,这样可以写:

document.write(cars[0] + "<br>");

document.write(cars[1] + "<br>");

document.write(cars[2] + "<br>");

document.write(cars[3] + "<br>");

document.write(cars[4] + "<br>");

document.write(cars[5] + "<br>");

但是,你没发现这样写需要写跟多冗余代码,且不方便,那么我们可以用循环方式来写:

for (var i=0;i<cars.length;i++)
{ 
    document.write(cars[i] + "<br>");
}

从中可以看出,代码简洁了许多。

for循环的语法:

for (语句 1; 语句 2; 语句 3)
{
    被执行的代码块
}

说明:

语句 1 (代码块)开始前执行

语句 2 定义运行循环(代码块)的条件

语句 3 在循环(代码块)已被执行之后执行

实例:

for (var i=0; i<5; i++)
{
      x=x + "该数字为 " + i + "<br>";
}

执行结果:

该数字为 0
该数字为 1
该数字为 2
该数字为 3
该数字为 4

从上述:

Statement 1 在循环开始之前设置变量 (var i=0)。

Statement 2 定义循环运行的条件(i 必须小于 5)。

Statement 3 在每次代码块已被执行后增加一个值 (i++)。

2、for/in循环

 for/in 语句循环遍历对象的属性:

var person={fname:"Bill",lname:"Gates",age:56}; 
var txt = “”;
for (x in person) {  // x 为属性名
    txt = txt + person[x];
}

输出结果:

BillGates56

说明:

循环遍历对象 "person" 的属性,根据x的属性名称,获取该名称对应的内容,并赋值。

3、while循环

只要指定条件为 true,循环就可以一直执行代码块。

while 循环会在指定条件为true时循环执行代码块。

语法

while (条件)
{
    
需要执行的代码
}

实例:

while (i<5) {
    x=x + "The number is " + i + "<br>";
    i++;
}

执行结果:

该数字为 0
该数字为 1
该数字为 2
该数字为 3
该数字为 4

注意:如果您忘记增加条件中所用变量的值,该循环永远不会结束。这可能导致浏览器崩溃。

4、do/while循环

do/while 循环是 while 循环的变体。

该循环会在检查条件是否为true之前执行一次代码块,然后如果条件为true的话,就会重复这个循环。

语法:

do {
    
需要执行的代码
}
while (条件);

实例:

do {
    x=x + "The number is " + i + "<br>";
    i++;
}
while (i<5);

执行结果:

该数字为 0
该数字为 1
该数字为 2
该数字为 3
该数字为 4

三、break与continue语句

break 语句用于跳出循环。

continue 用于跳过循环中的一个迭代。

1、break语句

实例:

for (i=0;i<10;i++) {
    if (i==3)  {
        break;
    }
    x=x + "The number is " + i + "<br>";
}

执行结果:

该数字为 0
该数字为 1
该数字为 2

说明:

如果上述实例中不加break语句,那么打印的结果就是0~9了,加上break之后,在i=3时触发break语句,跳出for循环,所以只打印到2就结束了。

2、continue语句

实例:

for (i=0;i<=10;i++) {
if (i==3) {
 continue;
}
   x=x + "The number is " + i + "<br>";
}

输出结果:

该数字为 0
该数字为 1
该数字为 2
该数字为 4
该数字为 5
该数字为 6
该数字为 7
该数字为 8
该数字为 9

说明:

从结果可以看出,只有i = 3时执行了continue语句,导致跳出了本次循环,但是又不影响下次继续循环。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1300670.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

代码序随想录二刷 |二叉树 | 二叉树的层序遍历II

代码序随想录二刷 &#xff5c;二叉树 &#xff5c; 二叉树的层序遍历II 题目描述解题思路代码实现 题目描述 107.二叉树的层序遍历II 给你二叉树的根节点 root &#xff0c;返回其节点值 自底向上的层序遍历 。 &#xff08;即按从叶子节点所在层到根节点所在的层&#xff0…

【Unity动画】Avatar Mask

创建 Avatar Mask可以设置那一部分骨骼运动和不运动 然后放在状态机里面的层中来混合 【后续完善】

JVM虚拟机系统性学习-运行时数据区(堆)

运行时数据区 JVM 由三部分组成&#xff1a;类加载系统、运行时数据区、执行引擎 下边讲一下运行时数据区中的构成 根据线程的使用情况分为两类&#xff1a; 线程独享&#xff08;此区域不需要垃圾回收&#xff09; 虚拟机栈、本地方法栈、程序计数器 线程共享&#xff08;数…

java接入gpt开发

前情提要 本次文章使用编译器为IDEA2020 使用GPT模型为百度旗下的千帆大模型 如果是个人用或者不流传出去&#xff0c;可以无脑入&#xff0c;因为会免费送20块钱&#xff08;够用上万次&#xff09; 代金卷查看 正式教程&#xff1a; 百度智能云控制台 (baidu.com) 按照步…

游戏提示找不到d3dx10_43.dll怎么办?5种方法教你如何修复

在计算机使用过程中&#xff0c;我们经常会遇到一些错误提示&#xff0c;其中之一就是“缺少d3dx10_43.dll文件”。这个错误提示通常出现在运行某些游戏或应用程序时&#xff0c;它意味着系统无法找到所需的动态链接库文件。本文将详细介绍d3dx10_43.dll文件的作用以及导致其丢…

《文化创新比较研究》期刊发表杂志投稿

《文化创新比较研究》是由国家新闻出版总署批准&#xff0c;黑龙江文化产业投资控股集团有限公司主管主办的学术期刊&#xff08;旬刊&#xff09;。 以学术研究为基础&#xff0c;始终坚持双百方针&#xff0c;立足理论前沿&#xff0c;关注学术热点&#xff0c;推动学术文化交…

kotlin - ViewBinding

前言 为什么用ViewBinding&#xff0c;而不用findViewById()&#xff0c;这个有很多优秀的博主都做了讲解&#xff0c;就不再列出了。 可参考下列博主的文章&#xff1a; kotlin ViewBinding的使用 文章里也给出了如何在gradle中做出相应的配置。 &#xff08;我建议先看这位博…

手把手教你玩转DHT11(原理+驱动)

大家生活中一定经常使用温湿度数据&#xff0c;比如&#xff1a;天气预报、智能家居、智慧大屏等等。这些数据可以通过温湿度传感器进行获取。在嵌入式开发中&#xff0c;温湿度传感器是一种十分常用的传感器。本文将为大家介绍温湿度传感器 DHT11&#xff0c;内容包含模块介绍…

Mac电脑投屏AirServer 2024怎么下载安装激活许可期限

对于那些想要将 iPhone、iPad 或其他 iOS 设备上的小屏幕镜像到计算机上的大屏幕的人来说&#xff0c;AirPlay 是一个很好的工具。 基于此&#xff0c;AirServer 非常需要将您的 Mac 或 PC 变成 AirPlay 设备。 但是如何使用计算机上的设置对 iPhone 等 iOS 设备进行屏幕镜像&a…

nginx中Include使用

1.include介绍 自己的理解&#xff1a;如果学过C语言的话&#xff0c;感觉和C语言中的Include引入是一样的&#xff0c;引入的文件中可以写任何东西&#xff0c;比如server相关信息&#xff0c;相当于替换的作用&#xff0c;一般情况下server是写在nginx.conf配置文件中的&…

三. LiDAR和Camera融合的BEV感知算法-BEVFusion实战

目录 前言1. BEVFusion实战 前言 自动驾驶之心推出的《国内首个BVE感知全栈系列学习教程》&#xff0c;链接。记录下个人学习笔记&#xff0c;仅供自己参考 本次课程我们来学习下课程第三章——LiDAR和Camera融合的BEV感知算法&#xff0c;一起去学习下 BEVFusion 的相关代码 课…

理解MyBatis原理、思想

JDBC编码的缺点 结果集解析复杂&#xff0c;列名硬编码&#xff0c;sql变化导致解析代码变化&#xff0c;系统不易维护。Sql语句硬编码&#xff0c;难以维护。 数据库配置硬编码。频繁连接、释放数据库资源&#xff0c;降低系统性能。preparedStatement向占位符号传参数存在硬…

SpringBoot集成系列--xxlJob

文章目录 一、搭建调度中心xxl-job-admin1、下载项目2、调整项目参数3、执行初始化数据库SQL4、启动项目5、访问 二、集成步骤1、添加xxl-job的依赖2、添加xxl-job的依赖3、配置执行器4、创建执行器5、开发任务1&#xff09;方式1&#xff1a;BEAN模式&#xff08;方法形式&…

文心ERNIE Bot SDK+LangChain:基于文档、网页的个性化问答系统

现在各行各业纷纷选择接入大模型&#xff0c;其中最火且可行性最高的形式无异于智能文档问答助手&#xff0c;而LangChain是其中主流技术实现工具&#xff0c;能够轻松让大语言模型与外部数据相结合&#xff0c;从而构建智能问答系统。ERNIE Bot SDK已接入文心大模型4.0能力&am…

2023-12-10 LeetCode每日一题(爬楼梯)

2023-12-10每日一题 一、题目编号 70. 爬楼梯二、题目链接 点击跳转到题目位置 三、题目描述 假设你正在爬楼梯。需要 n 阶你才能到达楼顶。 每次你可以爬 1 或 2 个台阶。你有多少种不同的方法可以爬到楼顶呢&#xff1f; 示例 1&#xff1a; 示例 2&#xff1a; 提…

【vim】常用操作

用的时候看看&#xff0c;记太多也没用&#xff0c;下面都是最常用的&#xff0c;更多去查文档vim指令集。 以下均为正常模式下面操作&#xff0c;正在编辑的&#xff0c;先etc一下. 1/拷贝当前行 yy&#xff0c;5yy为拷贝包含当前行往下五行 2/p将拷贝的东西粘贴到当前行下…

(第一部分1-3 / 13)PMBOK 6

项目管理协会 PMI 价值观 责任、尊重、公正、诚实 法约尔 亨利法约尔_百度百科 管理的5项职能 计划组织指挥协调控制管理的14项原则&#xff08;该原则的提出&#xff0c;标志着法约尔管理理论的形成&#xff09; 【劳动分工】劳动分工是合理使用个人力量和集体力量的最好…

36 括号匹配问题

import java.util.HashMap; import java.util.LinkedList; import java.util.Scanner;public class Main {// 输入获取public static void main(String[] args) {Scanner sc new Scanner(System.in);String s sc.nextLine();System.out.println(getResult(s));}// 算法入口pu…

EdgeYOLO: anchor-free,边缘部署友好

简体中文 1 Intro 2 Updates 3 Coming Soon 4 Models 5 Quick Start \quad 5.1 setup

Cpolar配置外网访问和Dashy

Dashy是一个开源的自托管的导航页配置服务,具有易于使用的可视化编辑器、状态检查、小工具和主题等功能。你可以将自己常用的一些网站聚合起来放在一起,形成自己的导航页。一款功能超强大,颜值爆表的可定制专属导航页工具 结合cpolar内网工具,我们实现无需部署到公网服务器…