【前端开发】一文带你快速入门JavaScript(下)Web 前端必备程序语言 | 条件语句与循环结构

【前端开发】一文带你快速入门JavaScript(下)Web 前端必备程序语言 | 条件语句与循环结构
在这里插入图片描述
💯 欢迎光临清流君的博客小天地,这里是我分享技术与心得的温馨角落 💯

🔥 个人主页:【清流君】🔥📚 系列专栏: 运动控制 | 决策规划 | 机器人数值优化 📚🌟始终保持好奇心,探索未知可能性🌟
动图描述

文章目录

在这里插入图片描述

引言

本篇博客是快速入门 JavaScript 的极简教程,旨在让非科班、对前端开发感兴趣的同学快速入手,本文将深入探讨 JavaScript 中的 if 条件语句、三目运算符以及 switch 语句,帮助读者理解它们的使用场景和实际应用。同时还将介绍 forwhile 循环的基本结构及其在遍历数组时的有效应用。


一、if 条件语句

先来了解一下 if 条件语句。

1.1 基本 if 语句

首先声明 x x x 常量,写 if 去检查一下 x x x 是否等于 10 10 10 ,现在使用三等号来检验 x x x 是否等于 10 10 10 。如果条件为真,就打印 x x x 是 10 10 10 。

const x =10;if(x ===10){ console.log('x is 10');}

运行,得到了 x x x 是 10 10 10 。

在这里插入图片描述

1.2 双等号与三等号的区别

如果把三等号改成双等号,它就不再考虑数据的类型了。

如果把 x x x 从数 10 10 10 改为字符串 10 10 10 :

const x ="10";if(x ==10){ console.log("x is 10");}

还会得到打印的结果。

在这里插入图片描述

但如果再改回三等号,可以看到就不再得到打印的结果,因为字符串和数不是类型的,所以改回数时,就又得到了打印结果。

不同的程序员也许会有不同的使用习惯,但有很多人喜欢使用三等号来保证数据类型也是相同的。

1.3 if-else 语句

再来了解一下 elseelse 会在 if 条件是假时被执行,所以再打印 x x x 不是 10 10 10 ,将 x x x 改为 20 20 20 :

const x =20;if(x ===10){ console.log("x is 10");}else{ console.log("x is not 10");}

于是就得到了 x x x 不是 10 10 10 。

在这里插入图片描述

1.4 else-if 语句

如果还希望有其他的条件区块,就可以添加 else - if 条件语句,写 else - if x x x 是否大于 10 10 10 ,打印 x x x 是大于 10 10 10 的,根据比较区间,于是将 else 中的打印语句改为 x x x 是小于 10 10 10 的,将 x x x 改为 4 4 4 。

const x =4;if(x ===10){ console.log("x is 10");}elseif(x >10){ console.log("x is grater than 10")}else{ console.log("x is less than 10");}

是得到了 x x x 小于 10 10 10 。

在这里插入图片描述

1.5 逻辑运算符的使用

再来声明常量 y y y 赋值为 10 10 10 ,写 if x x x 大于 5 5 5 或这里使用双竖线表示或 y y y 大于 10 10 10 ,删掉后面的区块,写 x x x 是大于 5 5 5 的,且 y y y 是大于 10 10 10 的。

const x =4;const y =10;if(x >5|| y >10){ console.log("x is grater than 5 or y is grater than 10");}

现在什么也没有得到,但如果将 y y y 改成 11 11 11const y = 11;就得到了打印结果。

在这里插入图片描述

如果使用且关系使用两个与符号,这时候又什么都得不到了。

if(x >5&& y >10)

因为且关系必须要两边同时是真的时候,整个条件句才能为真。

此时如果再把 x x x 改为 6 6 6 :

const x =6;const y =11;if(x >5&& y >10){ console.log("x is grater than 5 and y is grater than 10");}

现在就得到了打印的结果。

在这里插入图片描述

二、三目运算符

下面介绍与条件判断有关的三目运算符。

2.1 基本用法

首先声明常量 x x x 并赋值为 10 10 10 ,声明 color 其实与 x x x 是否大于 10 10 10 有关,所以在等号右面写 x x x 大于 10 10 10 ,使用问号来表示条件为真时,希望表达式的返回值,设为红色,使用冒号表示 else ,也就是条件为假时,表达式的值是多少,设为蓝色。

const x =10;const color = x >10?"red":"blue"; console.log(color);

2.2 运行结果

打印一下 color

在这里插入图片描述

得到了蓝色,因为 10 10 10 并不大于 10 10 10 。

将 x x x 改为 11 11 11const x = 11; 现在得到了红色,因为 11 11 11 大于 10 10 10 。

在这里插入图片描述

大家记住三目运算符后,就可以在很多地方简化自己的 ifelse 代码。


三、switch 语句

3.1 switch 语句结构

下面来了解一下 switch 语句, switch 语句也是一种条件语句

  • switchcolor ,用 case 匹配 color 的值。
  • casered 表示 color 是红色的条件下,要打印颜色是红色的,要写 break
  • caseblue 表示 color 是蓝色的条件下,要打印颜色是蓝色的,再写 break
  • 最后写 default ,表示上面任何 case 都没匹配成功的时候想要匹配的内容,所以打印颜色既不是红色也不是蓝色的。
const x =11;const color = x >10?"red":"blue";switch(color){case"red": console.log("color is red");break;case"blue": console.log("color is blue");break;default: console.log("color is not red or blue");}
在这里插入图片描述

3.2 case 和 break

break 是非常重要的,如果不写 break ,程序就会执行其匹配到的 case 后面的所有语句,而无视后面的 case 条件,直到遇到 break 或者执行完全部在 switch 中的程序语句后才会停止。


四、for 和 while 循环

下面介绍一下循环语句。

4.1 for 循环的基本结构

先来了解一下 for 循环,for 后面跟一对小括号。在这里要先声明循环变量,比如 i i i 并初始化,写一下循环条件,例如 i i i 小于 10 10 10 ,当 i i i 小于 10 10 10 的时候,循环就会被执行。最后使用加加的运算符,让 i i i 每次循环后递增,来保证循环不是死循环。在循环里打印 i i i :

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

运行,得到了从 0 0 0 到 9 9 9 的结果。

在这里插入图片描述

因为 10 10 10 不小于 10 10 10 ,所以 10 10 10 没有被输出。

如果希望 10 10 10 被打印出来,可以将小于改成小于等于。

可以在循环里做任何事情,比如写模板字符串:

for(let i =0; i <10; i++){ console.log(`For Loop Number: ${i}`);}

输出这样的结果。

在这里插入图片描述

4.2 while 循环的基本结构

还有 while 循环,它和 for 的区别是要在外部声明循环变量。写 let i i i ,赋值为 0 0 0 ,在 while 括号里写循环条件。在花括号里,使用同样的循环语句。有一件事是一定要注意的,就是要在 while 里面改变循环变量,否则它就会变成死循环。要让 i i i 每次递增 1 1 1

for(let i =0; i <10; i++){ console.log(`For Loop Number: ${i}`);}let i =0;while(i <10){ console.log(`While Loop Number: ${i}`); i++;}

执行,得到了相同的结果。

在这里插入图片描述

4.3 for 循环遍历数组

现在使用曾经使用过的对象数组来作为循环的对象,使用 for 循环来做这件事情,将循环条件的 10 10 10 改为 todos 的长度,打印 todos 中每对象的 text 属性的值。

const todos =[{ id:1, text:"Take out trash", isCompleted:true,},{ id:2, text:"Meeting with boss", isCompleted:true,},{ id:3, text:"Dentist appt", isCompleted:false,},];for(let i =0; i < todos.length; i++){ console.log(`${todos[i].text}`);}

运行,得到了期望的结果。

在这里插入图片描述

4.4 for…of 循环

还可以使用另一种 for 循环的写法,在括号中声明循环变量 todo ,在 todos 中,前面的循环变量可以是任何东西,而后面的 todos 是被循环的数组,此时 todo 就是数组中的每一项,如果把 todo 打印出来,就会得到数组中的每一项。如果希望得到每一项的 text ,只需打印todo.text

const todos =[{ id:1, text:"Take out trash", isCompleted:true,},{ id:2, text:"Meeting with boss", isCompleted:true,},{ id:3, text:"Dentist appt", isCompleted:false,},];for(let todo of todos){ console.log(todo.text);}
在这里插入图片描述

如果希望得到每一项的 ID ,只需要打印 todo.id


五、总结

本篇博客介绍了 JavaScript 中的条件语句和循环语句的基本用法,适合初学者或需要复习基础知识的开发者。首先,通过详细示例讲解了 if 语句、双等号与三等号的区别、 if - elseelse - if 语句的用法,并演示了逻辑运算符的使用。

此外,还介绍了三目运算符的简洁表达方式,并详细解释了 switch 语句的结构与用法。接着,深入剖析了 forwhile 循环的基本结构,展示了如何利用循环遍历数组,最后引入了 forof 循环。


参考资料

JavaScript快速入门 | WEB前端必备程序语言


后记:

🌟 感谢您耐心阅读这篇关于 快速入门JavaScript | 条件语句与循环结构 的技术博客。 📚

🎯 如果您觉得这篇博客对您有所帮助,请不要吝啬您的点赞和评论 📢

🌟您的支持是我继续创作的动力。同时,别忘了收藏本篇博客,以便日后随时查阅。🚀

🚗 让我们一起期待更多的技术分享,共同探索移动机器人的无限可能!💡

🎭感谢您的支持与关注,让我们一起在知识的海洋中砥砺前行 🚀

Read more

Java外功精要(6)——Spring事务及其传播机制

Java外功精要(6)——Spring事务及其传播机制

1.概述 Spring事务管理是Spring框架中用于确保数据库操作 原子性、一致性、隔离性和持久性(ACID) 的核心机制。它通过声明式或编程式(本文略)方式管理事务,支持多种事务传播行为和隔离级别相较于编程式事务,声明式事务通过@Transactional注解实现事务管理,无需手动编写事务代码事务基本概念在全面解析MySQL(5)——“索引、事务、JDBC”三大核心一文中有介绍,本文不再赘述 2.@Transactional 作用:提供声明式事务管理。它简化了在应用程序中管理数据库事务的流程。开发者只需在方法或类上添加此注解,Spring框架就会自动处理事务的开启、提交和回滚,无需手动编写事务管理代码(如 begin、commit、rollback) 级别:类 + 方法作为类注解:为类中所有public方法添加注解作为方法注解:默认仅对public方法生效 @RequestMapping("/test")@RestController@Slf4jpublicclassTestController{privatefinalUserService userService;@A

By Ne0inhk
【JavaSE-网络部分04】网络原理-传输层:UDP + TCP 可靠性三大核心机制(确认应答 / 超时重传 / 连接管理)

【JavaSE-网络部分04】网络原理-传输层:UDP + TCP 可靠性三大核心机制(确认应答 / 超时重传 / 连接管理)

传输层的学习 传输层我们说过最核心的协议是TCP和UDP。 那么在这里面我们再谈一下端口号。 再谈端口号 我们说端口号是用整数表示,用来区分同一台主机上不同的应用程序。 我们前面在网络编程冲每个程序中的socket创建的时候都需要关联端口号,那么对于服务器来说,端口号是程序员的手动指定的;而对于我们的客户端来说,端口号是系统自动分配的。 端口号是由两个字节表示的无符号整数 * 范围:0~65535。 虽然它的范围呢比较多,但是呢并不是所有的数都能是可以使用的。 * 0~1023 这样的范围通常我们是不使用的,他们叫做知名端口号,是给一些知名的服务器预留的。 虽然现在我们知名的服务器没有太多,已经寥寥无几了,但是呢有两个知名的端口,一定要重点认识。 * 80 ==> 这个是给HTTP服务器留的端口号。 * 443 ==》 这个是给HTTPS服务器留的端口。 问题1:一个进程是否可以绑定多个端口号? 答:这个是完全可以的,但是注意其实不是进程绑定端口号,而是我们的socket绑定端口,我们一个进程中完全可以创建多个socket,所以呢可以同时关联到多个端口号

By Ne0inhk
飞算Java在线学生成绩综合统计分析系统的设计与实现

飞算Java在线学生成绩综合统计分析系统的设计与实现

目录 * 引言 * 技术栈 * 一.需求分析与规划 * 功能需求 * 核心模块 * 技术选型 * 二.环境准备 * 1. 下载IntelliJ IDEA * 2. 安装IntelliJ IDEA * 3. 安装飞算JavaAI插件 * 4. 登录飞算JavaAI * 三.模块设计与编码 * 1. 飞算JavaAI生成基础模块 * 2. 核心代码展示 * entity包下实体类示例 * `Student.java`(学生实体) * `Score.java`(成绩实体) * dto包下数据传输对象示例 * `ScoreAddDTO.java`(成绩录入请求DTO) * `StudentRankQueryDTO.java`(个人排名查询DTO) * vo包下视图对象示例 * `StudentRankVO.java`(个人排名返回VO) * mapper包下数据访问接口示例 * `ScoreMappe

By Ne0inhk
Java 部署:滚动更新(K8s RollingUpdate 策略)

Java 部署:滚动更新(K8s RollingUpdate 策略)

👋 大家好,欢迎来到我的技术博客! 📚 在这里,我会分享学习笔记、实战经验与技术思考,力求用简单的方式讲清楚复杂的问题。 🎯 本文将围绕Java部署这个话题展开,希望能为你带来一些启发或实用的参考。 🌱 无论你是刚入门的新手,还是正在进阶的开发者,希望你都能有所收获! 文章目录 * Java 部署:滚动更新(K8s RollingUpdate 策略) * 什么是滚动更新(Rolling Update)? * 为什么 Java 应用特别需要滚动更新? * Kubernetes 滚动更新的核心机制 * 默认值 * 参数详解 * 构建一个支持滚动更新的 Java 应用 * 1. 创建 Spring Boot 项目 * 2. 编写主类 * 3. 添加控制器 * 4. 配置 Actuator 健康端点 * 5. 构建 Docker 镜像 * 编写 Kubernetes

By Ne0inhk