JavaScript基础——JavaScript常见语句(判断语句、循环语句、控制流语句)

news2024/9/20 17:22:39

        JavaScript提供了丰富的语句来控制程序的执行流程,包括用于条件判断的if、switch和三元运算符,以及用于循环的for、while、do...while、for...in和for...of。此外,还有控制流语句如break、continue和return。

判断语句

if 语句

         if 语句:用于基于条件执行代码块。语法如下:

if (condition) {
    // 条件为真时执行的代码
}

        定义变量记录一个分数,小于60分,在控制台上输出 “成绩不及格”。

         完整代码:

        var score = 56;
        if(score < 60) {// 符合条件的情况下,就进入执行 {} 中代码
            console.log("成绩不及格");
        }

if...else 语句 

        if...else 语句:在条件为假时提供一个备选的代码块。语法如下:

if (condition) {
    // 条件为真时执行的代码
} else {
    // 条件为假时执行的代码
}

        定义变量记录一个分数,大于等于60分,在控制台上输出 “成绩及格”,否则,输出“成绩不及格”。

        完整代码: 

    <script>

        var result = 40;
        if (result >= 60) {
            // 符合条件,执行if作用域 {} 的代码
            console.log("成绩及格");
        }
        else {
            // 否则,执行else作用域 {} 的代码
            console.log("成绩不及格");
        }

    </script>

if...else if...else 语句

        if...else if...else 语句:允许多个条件的判断。 语法如下:

if (condition1) {
    // 第一个条件为真时执行的代码
} else if (condition2) {
    // 第二个条件为真时执行的代码
} else {
    // 所有条件都不满足时执行的代码
}

         定义变量记录一个分数,根据以下给出的参数做判断。

        //  基础很差  0  ~ 39  

        //  基础差    40 ~ 59

        //  基础好    60 ~ 79

        //  基础很好  80 ~ 100

        //  未知分数

        完整代码:

    <script>

        // 3) 定义变量记录一个分数,根据以下给出的参数做判断
        //  基础很差  0  ~ 39  
        //  基础差    40 ~ 59
        //  基础好    60 ~ 79
        //  基础很好  80 ~ 100
        //  未知分数

        var value = 65;

        if (value >= 0 && value <= 39) {
            console.log("基础很差");
        }

        else if (value >= 40 && value <= 59) {
            console.log("基础差");
        }

        else if (value >= 60 && value <= 79) {
            console.log("基础好");
        }

        else if (value >= 80 && value <= 100) {
            console.log("基础很好");
        }

        else {
            console.log("未知分数");
        }

    </script>

三元运算符   

        三元运算符:一种简洁的条件表达式。相当于if...else,可以返回一个结果。语法如下:

条件是否成立?条件成立执行代码:条件不成立执行代码
let result = condition ? value1 : value2;

        判断b和c的大小,如果b大于c,则d等于b,否则等于c。

        完整代码:

    <script>

        // 判断b和c的大小,如果b大于c,则d等于b,否则等于c
        var b = 10;
        var c = 20;
        var d = b > c ? b : c;
        console.log(d);

    </script>

循环语句 

        循环是重复执行的意思,可以减少重复冗余的代码。

for 循环

        for 循环:用于重复执行一段代码直到条件不再满足。语法如下:

for (初始化; 终止条件; 自增 / 自减) {
    循环体
}

        程序首先执行代码1,代码2,进入循环体,走出循环体,最后执行代码3。

        代码1:初始化一个值

        代码2:条件(要合理,否则出现死循环)

        代码3:控制值改变

for(代码1; 代码2; 代码3){
    循环体
}

        假设需要从0打印到9,初始化值为0,条件是小于10,自增。

        代码如下:

for (let i = 0; i < 10; i++) {
    console.log(i); // 打印0到9
}

while循环

        while 循环:只要条件为真,就重复执行代码块,与for相同,需要有条件和自增/自减,否则程序会陷入死循环。语法如下:

while (条件) {
    代码块;
    自增/自减;
}

        假设现在还是要打印0到9,首先定义变量为0,while循环的条件设置为小于10,自增。

        完整代码如下:

let i = 0;
while (i < 10) {
    console.log(i);
    i++;
}

do...while循环

        do...while 循环:至少执行一次代码块,然后只要条件为真就继续执行。语法如下:

        假设现在还是要打印0到9,首先定义变量为0,do是执行打印和自增,while循环的条件设置为小于10。

        完整代码如下:

let i = 0;
do {
    console.log(i);
    i++;
} while (i < 10);

for...in 循环

        for...in 循环:遍历对象的属性。语法如下:

for (const 键 in 对象) {
    console.log(键, 对象[键]);
}

        设置一个对象,遍历这个对象,输出属性名与属性值。 

 

        完整代码如下: 

    <script>

        const obj = { a: 1, b: 2, c: 3 };
        for (const prop in obj) {
            console.log(prop, obj[prop]);
        }

    </script>

for...of循环

        for...of 循环:遍历可迭代对象(如数组、字符串等)。语法如下:

for (const 值 of 数组) {
    console.log(值);
}

        定义一个数组,遍历这个数组的值。

 

         完整代码如下:

    <script>

        const arr = ['apple', 'banana', 'cherry'];
        for (const fruit of arr) {
            console.log(fruit);
        }

    </script>

控制流语句

break 语句

        break 语句:用于立即退出循环或switch语句,执行break语句后,循环或switch语句后续的代码都不执行。语法如下:

for (...) {
    if (终止条件) {
        break; // 退出循环
    }
}

        设置一个循环,循环10次,到第5次时退出循环,在控制台观察输出,可以发现到5就不在输出后续的,说明程序到第5次执行break语句后,直接推出了循环。

        代码如下: 

    <script>
        for (let i = 0; i < 10; i++) {
            if (i === 5) {
                break; // 退出循环
            }
            console.log(i);
        }
    </script>

continue语句

        continue语句:用于跳过当前循环的剩余代码,直接进入下一次循环。执行continue语句后,退出执行的那一次循环或switch语句,执行后续的代码。语法如下:

for (...) {
    if (终止条件) {
        continue; // 退出循环
    }
}

        设置一个循环,循环10次,到第5次时退出循环,在控制台观察输出,可以发现第5次没有输出,其他都有输出,说明只是退出了第5次循环。

        完整代码如下:

    <script>
        for (let i = 0; i < 10; i++) {
            if (i === 5) {
                continue; // 退出循环
            }
            console.log(i);
        }
    </script>

return语句 

        return语句:用于从函数返回一个值,也有终止代码块(函数)的作用,如果有多个return,只执行第一个。

function myFunction() {
    return XXX;
}

        设置一个函数,返回hello world。

         完整代码如下:

    <script>

        function myFunction() {
            return 'Hello, World!';
        }
        console.log(myFunction());

    </script>

switch语句

        switch语句:用于基于不同的情况执行不同的代码块。语法如下:

switch (变量) {
    case 值1:
        执行代码1;
        break;
    case 值2:
        执行代码2;
        break;
    default:
        执行代码3;
}

        定义四个方向变量(上up 下down 左left 右right),满足某个条件执行某代码。

        完整代码如下:

    <script>

        // 定义方向变量(上up 下down 左left 右right)
        var direction = "right";
        // 控制流语句(分支处理)
        // switch(变量) {case 分支1:执行代码; break; case 分支2:执行代码 break; }
        switch (direction) {
            case "right":
                console.log('向右移动');
                break;
            case "left":
                console.log('向左移动');
                break;
            case "up":
                console.log('向上移动');
                break;
            case "down":
                console.log('向下移动');
                break;
            default:
                console.log('无效的方向');
                break;
        }

    </script>

        

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

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

相关文章

C/C++开发,opencv轮廓提取实现

一、cv::findContours轮廓提取函数 1.1 cv::findContours函数简介 cv::findContours 函数是用于从二值图像&#xff08;灰度图&#xff09;中检索轮廓。这个函数在OpenCV的不同版本中参数可能有所不同&#xff0c;但基本概念保持一致。特别是在OpenCV 3.x和4.x版本中&#xff…

贪吃蛇(使用QT)

贪吃蛇小游戏 一.项目介绍**[贪吃蛇项目地址](https://gitee.com/strandingzy/QT/tree/zyy/snake)**界面一&#xff1a;游戏大厅界面二&#xff1a;关卡选择界面界面三&#xff1a;游戏界面 二.项目实现2.1 游戏大厅2.2关卡选择界面2.3 游戏房间2.3.1 封装贪吃蛇数据结构2.3.2 …

如何通过谷歌外链快速增加网站流量?

利用谷歌外链提升流量的方法非常直接&#xff0c;但实际上&#xff0c;外链影响的是关键词排名&#xff0c;关键词排名提升了&#xff0c;自然就会有流量&#xff0c;所以谷歌外链不是直接能提升网站流量&#xff0c;而是间接的&#xff0c;下面&#xff0c;我会详细介绍几种有…

验收测试:确保软件符合业务需求和合同要求

目录 前言1. 验收测试的概念1.1 用户验收测试&#xff08;UAT&#xff09;1.2 操作验收测试&#xff08;OAT&#xff09; 2. 验收测试的主要作用2.1 确认业务需求的满足2.2 验证合同要求的实现2.3 提升用户信心 3. 验收测试在整个测试中的地位3.1 测试的最后一道关卡3.2 用户与…

niushop逻辑漏洞

niushop逻辑漏洞 安装环境 这里控制不了 抓包在数据包中可以改数据

非线性系统稳定控制器设及案例仿真(s-function函数)

目录 前沿一、案例11. 系统模型 二、案例21. 系统模型2. 稳定性分析3. 仿真(包含代码)1. 仿真效果2. 仿真结果3. 仿真剖析4. 仿真图与代码 前沿 定义一个系统 x ˙ f ( x , u ) \dot{x} f(x,u) x˙f(x,u), 其中 x x x 为状态变量&#xff0c; u u u 为系统输入&#xff0c…

跨平台终端工具Tabby安装配置与远程ssh连接Linux_ubuntu详细教程

文章目录 前言1. Tabby下载安装2. Tabby相关配置3. Tabby简单操作4. ssh连接Linux4.1 ubuntu系统安装ssh4.2 Tabby远程ssh连接ubuntu 5. 安装内网穿透工具5.1 创建公网地址5.2 使用公网地址远程ssh连接 6. 配置固定公网地址 前言 今天和大家分享一下如何在Windows系统使用Tabb…

构建LVS负载均衡群集

构建LVS负载均衡群集 实验环境实验环境 201:客户端 101:调度器 (需要用到2个网卡) 102:web 103:web 104:NFS存储 101:(添加一个网卡) 2 [root@localhost ~]# cd /etc/sysconfig/network-scripts/ 3 4 //查看另一个网卡的名字ens36 5 [root@localhost network-scrip…

人工智能深度学习系列—深度学习中的相似性追求:Triplet Loss 全解析

文章目录 1. 背景介绍2. Loss计算公式3. 使用场景4. 代码样例5. 总结 1. 背景介绍 在机器学习和模式识别领域&#xff0c;相似性度量是核心问题之一。Triplet Loss&#xff0c;作为一种特殊的损失函数&#xff0c;被设计用来学习数据的相对距离&#xff0c;从而使得相似样本更…

5.C_Demo_排序

冒泡排序法 原理&#xff1a; 依次比较相邻的两个元素&#xff0c;如果顺序错误就交换。 思路&#xff1a; 这种方法&#xff0c;显然需要很多轮才能完成&#xff0c;每一轮只能排序一个最大值或最小值(第一层for)&#xff0c;将全部的数据排序完成&#xff0c;需要很多轮(第…

第三期书生大模型实战营之书生大模型全链路开源开放体系

一. Introduction 大模型是发展通用人工智能的重要途经 二. 开源历程以及InternLM2 2024年1月17日 InternLM2 2开源 三. 书生浦语2.0的主要亮点 3.1 超长上下文 3.2 综合性能全面提升 3.3 优秀的对话和创作体验 3.4 工具调用能力整体升级 3.5 突出的数理能力和实用的…

Among Us 私服的制作之路

文章目录 Among Us 私服的制作之路这游戏通常包括以下核心元素&#xff1a;角色设定&#xff1a;游戏机制&#xff1a;游戏界面&#xff1a; 第四步&#xff1a;添加社交特性第五&#xff1a;测试与优化方面 十分基础的框架(Web)注意事项 Among Us 私服的制作之路 作者正在准备…

嵌入式:简单的UI框架

1&#xff1a;UI框架简介 除了服务框架外&#xff0c;我们还需要对外显示UI&#xff0c;所以我们就需要一个UI的框架&#xff0c;跟服务框架一样&#xff0c;不用这个UI框架我们也是可以实现&#xff0c;但是这样每个人写的UI都会有差异&#xff0c;需要的事件&#xff0c;数据…

牛客JS题(二十)判断斐波那契数组

注释很详细&#xff0c;直接上代码 涉及知识点&#xff1a; 循环判断斐波那契数列组递归判断斐波那契数列组合法性判断 题干&#xff1a; 我的答案 <!DOCTYPE html> <html><head><meta charset"utf-8" /></head><body><scrip…

嵌入式数据库 sqlite3

数据库文件与普通文件区别: 1.普通文件对数据管理(增删改查)效率低 2.数据库对数据管理效率高,使用方便 常用数据库: 1.关系型数据库 将复杂的数据结构简化为二维表格形式 大型:Oracle、DB2 中型:MySql、SQLServer 小型:Sqlite …

c# .net core项目角色授权机制

前言 角色授权机制是确保应用程序安全性的重要组成部分,它允许开发者根据用户的角色来限制对应用程序中不同资源的访问。 基本概念: 角色授权基于用户角色的访问控制,即根据用户所属的角色来决定其能够访问的资源或执行的操作。在.NET Core中,这通常与身份认证(Authent…

怎么配置一个axios来拦截前后端请求

首先创建一个axios.js文件 导入我们所需要的依赖 import axios from "axios"; import Element from element-ui import router from "./router"; 设置请求头和它的类型和地址 注意先注释这个url,还没有解决跨域问题,不然会出现跨域 // axios.defaults.…

Python Sklearn库SVM算法应用

SVM 是一种有监督学习分类算法&#xff0c;输入值为样本特征值向量和其对应的类别标签&#xff0c;输出具有预测分类功能的模型&#xff0c;当给该模型喂入特征值时&#xff0c;该模型可以它对应的类别标签&#xff0c;从而实现分类。 Sklearn库SVM算法 下面我看一下 Python …

CSS学习 - 选择器

基础选择器 ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- 类型选择器&…

牛逼,两百行Python代码带你打造一款《天天酷跑》游戏!(附源码)

《天天酷跑》是一款广受欢迎的跑酷类手机游戏&#xff0c;玩家需要控制角色在赛道上奔跑&#xff0c;躲避障碍物&#xff0c;收集金币和道具&#xff0c;以获取高分。虽然完全复现这款游戏的复杂度和图形效果在简单的Python环境中难以实现&#xff08;特别是游戏图形和动画&…