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

一、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.hqwc.cn/news/263926.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Linux下C++动态链接库的生成以及使用

目录 一.前言二.生成动态链接库三.使用动态链接库 一.前言 这篇文章简单讨论一下Linux下如何使用gcc/g生成和使用C动态链接库&#xff08;.so文件&#xff09;。 二.生成动态链接库 先看下目录结构 然后看下代码 //demo.h#ifndef DEMO_H #define DEMO_H#include<string&…

【深度学习】强化学习(四)强化学习的值函数

文章目录 一、强化学习问题1、交互的对象2、强化学习的基本要素3、策略&#xff08;Policy&#xff09;4、马尔可夫决策过程5、强化学习的目标函数6、值函数1. 状态值函数&#xff08;State Value Function&#xff09;a. 状态值函数的定义b. 贝尔曼方程&#xff08;Bellman Eq…

class069 从递归入手三维动态规划【算法】

class069 从递归入手三维动态规划 code1 474. 一和零 // 一和零(多维费用背包) // 给你一个二进制字符串数组 strs 和两个整数 m 和 n // 请你找出并返回 strs 的最大子集的长度 // 该子集中 最多 有 m 个 0 和 n 个 1 // 如果 x 的所有元素也是 y 的元素&#xff0c;集合 x 是…

深入浅出分析kafka客户端程序设计 ----- 生产者篇----万字总结

前面在深入理解kafka中提到的只是理论上的设计原理&#xff0c; 本篇讲得是基于c语言的kafka库的程序编写&#xff01;&#xff01;&#xff01;&#xff01;&#xff01; 首先要编写生产者的代码&#xff0c;得先知道生产者的逻辑在代码上是怎么体现的 1.kafka生产者的逻辑 …

深度学习——第4.1章 深度学习的数学基础

第4章 深度学习的数学基础 目录 4.1 向量 4.2 求和符号 4.3 累乘符号 4.4 导数 4.5 偏导数 4.6 矩阵 4.7 指数函数和对数函数 注意&#xff1a;4.6和4.7位于4.2章 第4章 深度学习的数学基础 本章总结一下机器学习所需的数学知识&#xff0c;同时介绍如何在Python中使用…

Multisim电路仿真软件使用教程

安装直接参考这篇文章&#xff1a;Multisim 14.0安装教程 软件管家公众号里有很多软件&#xff0c;需要的可以去找下然后安装&#xff0c;这里用的是14.0版本。 这里有个大神的详细教程&#xff0c;可以参考&#xff1a; Multisim软件使用详细入门教程&#xff08;图文全解&…

【Android12】Android Framework系列--AMS启动Activity分析

AMS启动Activity分析 通过ActivityManagerService(AMS)提供的方法&#xff0c;可以启动指定的Activity。比如Launcher中点击应用图标后&#xff0c;调用AMS的startActivity函数启动应用。 AMS提供的服务通过IActivityManager.aidl文件定义。 // frameworks/base/core/java/an…

mysql数据库文件丢失恢复---惜分飞

客户服务器重启,mysql相关数据文件丢失 通过底层工具进行分析,无法正确恢复数据库名字,一个个单个ibd文件(而且很多本身是错误的) 对于这种情况,通过mysql block扫描恢复出来page文件 恢复出来客户需要数据 这个客户出现该故障的原因大概率是由于文件系统损坏导致.最终…

[ 蓝桥杯Web真题 ]-布局切换

目录 介绍 准备 目标 规定 思路 解法参考 介绍 经常用手机购物的同学或许见过这种功能&#xff0c;在浏览商品列表的时候&#xff0c;我们通过点击一个小小的按钮图标&#xff0c;就能快速将数据列表在大图&#xff08;通常是两列&#xff09;和列表两种布局间来回切换。…

四. 基于环视Camera的BEV感知算法-BEVFormer

目标 前言0. 简述1. 算法动机&开创性思路2. 主体结构3. 损失函数4. 性能对比5. BEVFormerv2总结下载链接参考 前言 自动驾驶之心推出的《国内首个BVE感知全栈系列学习教程》&#xff0c;链接。记录下个人学习笔记&#xff0c;仅供自己参考 本次课程我们来学习下课程第四章—…

【数据结构实践课设】新生报道注册管理信息系统

目录 1.主要框架 2.写入文件 3.读取文件 4.注册学生信息 5.增加学生信息 6.删除学生信息 7.按姓名查询 8.按班级查询 9.按专业查询 10.打印学生信息 11.完整代码 &#x1f308;嗨&#xff01;我是Filotimo__&#x1f308;。很高兴与大家相识&#xff0c;希望我的博客能对你有所…

关于图像清晰度、通透度的描述

1、问题背景 在图像评测过程中&#xff0c;从主观上一般怎么去评判一副图像的优劣呢&#xff1f; 比较显而易见的就是图像的清晰度和通透度&#xff0c;他们决定了评判者对画质的第一印象。 那怎么去理解图像的清晰度和通透度呢&#xff1f;这是本文要描述的内容。 2、问题分…