【零基础学JS - 11 】javaScript中的if..else表达式

news2024/11/15 23:59:53

👨‍💻 作者简介:程序员半夏 , 一名全栈程序员,擅长使用各种编程语言和框架,如JavaScript、React、Node.js、Java、Python、Django、MySQL等.专注于大前端与后端的硬核干货分享,同时是一个随缘更新的UP主. 你可以在各个平台找到我!
🏆 本文收录于专栏: 零基础学JavaScript,包含JavaScript 基础知识,DOM相关知识,高级知识点,最新ES特性
————————————————————————
🔥 热门专栏:

🥇 学透CSS: 全网阅读超百万,CSDN最强CSS专栏,精通CSS全属性,不做切图仔,从订阅本专栏开始!

🥇 SprinbBoot + Vue3 项目实战: 新鲜出炉的2023实战系列博客,配套视频,用心打磨,篇篇精品.持续更新,值得订阅!

在这里插入图片描述

文章目录

  • JavaScript中的条件语句
    • JavaScript if语句
      • JavaScript if语句的工作原理
    • JavaScript if...else语句
      • JavaScript if...else语句的工作原理
    • JavaScript if...else if语句
      • JavaScript if...else if语句的工作原理
    • 嵌套的if...else语句
    • 只有一个语句的if...else语句的代码块

JavaScript中的条件语句

在计算机编程中,可能会出现需要在多个选择中运行一段代码块的情况。例如,根据学生获得的分数分配A、B或C等级。

在这种情况下,你可以使用JavaScript的if…else语句创建一个可以做出决策的程序。

在JavaScript中,if…else语句有三种形式。

  • if语句
  • if…else语句
  • if…else if…else语句

JavaScript if语句

if语句的语法如下:

if (condition) {
    // if的代码块
}

if语句评估括号()内的条件。

如果条件评估为true,则执行if的代码块。

如果条件评估为false,则跳过if的代码块。

注意:{ }内的代码是if语句的代码块。

JavaScript if语句的工作原理

以下是if语句的工作原理:

// 检查数字是否为正数

const number = prompt("输入一个数字:");

// 检查数字是否大于0
if (number > 0) {
 // if语句的代码块
  console.log("数字是正数");
}

console.log("if语句很简单");

假设用户输入2。在这种情况下,条件number > 0评估为true。if语句的代码块被执行。

假设用户输入-1。在这种情况下,条件number > 0评估为false。因此,if语句的代码块被跳过。

由于console.log(“if语句很简单”);在if语句的代码块之外,因此它始终被执行。

在条件中使用比较和逻辑运算符。因此,要了解有关比较和逻辑运算符的更多信息,请访问JavaScript比较和逻辑运算符。

JavaScript if…else语句

if语句可以有一个可选的else子句。if…else语句的语法如下:

if (condition) {
    // 如果条件为true的代码块
} else {
   // 如果条件为false的代码块
}

if…else语句评估括号内的条件。

如果条件评估为true,

  • 执行if的代码块
  • 跳过else的代码块

如果条件评估为false,

  • 执行else的代码块
  • 跳过if的代码块

JavaScript if…else语句的工作原理

以下是if…else语句的工作原理:

// 检查数字是正数、负数还是零

const number = prompt("输入一个数字:");

// 检查数字是否大于0
if (number > 0) {
  console.log("数字是正数");
}
// 如果数字不大于0
else {
  console.log("数字是负数或0");
}

console.log("if...else语句很简单");

假设用户输入2。在这种情况下,条件number > 0评估为true。因此,执行if语句的代码块并跳过else语句的代码块。

假设用户输入-1。在这种情况下,条件number > 0评估为false。因此,执行else语句的代码块并跳过if语句的代码块。

JavaScript if…else if语句

if…else语句用于在两个选择中执行一段代码块。但是,如果需要在多个选择之间进行选择,则可以使用if…else if…else。

if…else if…else语句的语法如下:

if (condition1) {
    // 代码块1
} else if (condition2){
    // 代码块2
} else {
    // 代码块3
}

如果条件1评估为true,则执行代码块1。

如果条件1评估为false,则评估条件2。

如果条件2为true,则执行代码块2。

如果条件2为false,则执行代码块3。

JavaScript if…else if语句的工作原理

以下是if…else if…else语句的工作原理:

// 检查数字是否为正数、负数或零
const number = prompt("输入一个数字:");

// 检查数字是否大于0
if (number > 0) {
    console.log("数字是正数");
}
// 检查数字是否为0
else if (number == 0) {
  console.log("数字是0");
}
// 如果数字既不大于0,也不是0
else {
    console.log("数字是负数");
}

console.log("if...else if...else语句很简单");

假设用户输入0,则第一个测试条件number > 0评估为false。然后,评估第二个测试条件number == 0并执行其相应的代码块。

嵌套的if…else语句

你还可以在if…else语句内部使用if…else语句。这称为嵌套if…else语句。

以下是嵌套if…else语句的示例:

// 检查数字是否为正数、负数或零
const number = prompt("输入一个数字:");

if (number >= 0) {
    if (number == 0) {
        console.log("你输入了数字0");
    } else {
        console.log("你输入了正数");
    }
} else {
    console.log("你输入了负数");
}

假设用户输入5。在这种情况下,条件number >= 0评估为true,并且程序的控制进入外部if语句。

然后,评估内部if语句的测试条件number == 0。由于它是false,因此执行内部if语句的else子句。

注意:如你所见,嵌套if…else会使我们的逻辑复杂化,我们应该尽可能避免使用嵌套if…else。

只有一个语句的if…else语句的代码块

如果if…else语句的代码块只有一个语句,我们可以在程序中省略{ }。例如,你可以将

const number = 2;
if (number > 0) {
    console.log("数字是正数。");
} else {
   console.log("数字是负数或0。");
}

替换为

const number = 2;
if (number > 0)
    console.log("数字是正数。");
 else 
   console.log("数字是负数或0。");

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

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

相关文章

[操作系统]4.文件管理

因为复习时间来不及了 还是老规矩,知识点覆盖不完全,具体内容请参考黑书,知识脉络来自王道操作系统 关于文件操作系统 1.文件系统基础 (1)文件的定义 文件时操作系统中的重要概念,是以计算机硬盘为基础载体存储在假期上的信息的集合 (2)文件的属性 文件的属性可以理解为文…

json-server 详解

这几天在写react的前端项目,想着后端接口没有,在网上也找不到比较合适的接口,所以在github和npm上翻了许久关于前端简单生成后端接口的工具,终于被找到了这个神仙工具json-server JSON-Server 是一个 Node 模块,运行 Express 服务器,你可以指定一个 jso…

CENTOS上的网络安全工具(二十四)Windows下的Hadoop+Spark编程环境构建

前面我们搭建了hadoop集群,spark集群,也利用容器构建了spark的编程环境。但是一般来说,就并行计算程序的开发,一刚开始一般是在单机上的,比如hadoop的single node。但是老师弄个容器或虚拟机用vscode远程访问式开发&am…

APM代码阅读(一):串口驱动

文章目录 前言一、AP_RangeFinder_TeraRanger_Serial.h二、AP_RangeFinder_TeraRanger_Serial.cpp三、AP_RangeFinder.cppinitdetect_instance_add_backendupdate 四、 AP_RangeFinder_Backend_Serial.cpp 前言 APM 4.2.3 以测距传感器的串口驱动为例进行阅读 其他的传感驱动都…

【Applied Algebra】扩域(Galois域)上的乘加法表构造

【Applied Algebra】扩域(Galois域)上的乘法表构造 在之前的文章里,我们讨论了扩域上(Galois域)的计算及其实现,但是侧重的是扩域中元素之间运算的细节实现,而如果想描述整个域的结构,就需要构造乘法表和加法表;实现仍然是基于c和符号计算库GiNaC; 运算表及其设计 考虑 F p n …

Zookeeper 基础知识汇总

一、zookeeper 概述 中文教程:https://www.docs4dev.com/docs/zh/zookeeper/r3.5.6/reference/zookeeperOver.html 1.1 概述 ZooKeeper 是⼀种分布式协调服务,⽤于管理⼤型主机。在分布式环境中协调和管理服务是 ⼀个复杂的过程。ZooKeeper 通过其简单的…

网内计算:可编程数据平面和技术特定应用综述

网内计算:可编程数据平面和技术特定应用综述 摘要——与云计算相比,边缘计算提供了更靠近终端设备的处理,降低了用户体验的延迟。最新的In-Network Computing范例采用可编程网络元素在数据达到边缘或云服务器之前计算,促进了常见…

Linux性能分析之perf(1)基础知识总结

Linux(09)之perf(1)基础知识总结 Author:Onceday Date:2023年1月31日 漫漫长路,才刚刚开始… 参考文档: Tutorial - Perf Wiki (kernel.org) linux性能分析工具专题-perf(事件采样,全面性能分析&#x…

时钟树综合跑不下去,怎么破?

吾爱IC社区第二十一期IC训练营正式开始招募啦(5月21号开营)!不知不觉小编的IC后端训练营课程已经举办21期了。每一期的报名时间也就1-3天,而且几乎每期都是爆满的情况。这背后的逻辑很简单。大家都信任吾爱IC社区这个品牌&#xf…

做副业的我很迷茫,但ChatGPT却治好了我——AI从业者被AI模型治愈的故事

迷茫,无非就是不知道自己要做什么,没有目标,没有方向。 当有一个明确的目标时,往往干劲十足。但做副业过程中,最大的问题往往就是 不知道自己该干什么。 干什么?怎么干?干到什么程度&#xff1f…

通过部署Java工程学习Jenkins

今天来学习Jenkins部署应用,在工作中一般都是提交代码到git之后,通过自动打包的功能形成jar包,然后运行jar包。服务器自动从git拉取最新代码进行打jar包的这个过程就通过Jenkins来进行。 Jenkins官网地址 首先我们可以看一下官网的版本 我们…

智能学习 | MATLAB实现GWO-SVM多输入单输出回归预测(灰狼算法优化支持向量机)

智能学习 | MATLAB实现GWO-SVM多输入单输出回归预测(灰狼算法优化支持向量机) 目录 智能学习 | MATLAB实现GWO-SVM多输入单输出回归预测(灰狼算法优化支持向量机)预测效果基本介绍模型原理程序设计参考资料预测效果 基本介绍 Matlab实现GWO-SVM灰狼算法优化支持向量机的多输…

Vue中如何进行状态持久化(LocalStorage、SessionStorage)

Vue中如何进行状态持久化(LocalStorage、SessionStorage)? 在Vue应用中,通常需要将一些状态进行持久化,以便在用户关闭浏览器或刷新页面后,仍能保留之前的状态。常见的持久化方式包括LocalStorage和Sessio…

Cracking C++(8): 开发环境的选择

Cracking C(8): 开发环境的选择 文章目录 Cracking C(8): 开发环境的选择1. 目的2. 工具代码编辑器 和 IDEWindows命令行界面编译器gcc/gclang/clangMicrosoft Visual Studio基于浏览器的编译器 3. 其他工具补充调试器代码分析工具其他 1. 目的 在看了 hackingcpp 的 C Develo…

《百年孤独》15句经典语录

句句都是人生真相,说透了所有人的孤独。 1、生命中曾经有过的所有灿烂,原来终究,都需要用寂寞来偿还。 2、过去都是假的,回忆是一条没有尽头的路。 这句话是最受读者欢迎的一句话,回忆就是一条没有尽头的路&#xf…

shell脚本基础5——常用命令写作技巧

文章目录 一、grep命令二、sed命令2.1 选项参数2.2 常用命令 三、AWK命令3.1 常用参数3.2 常用示例 四、find与xargs五、date命令六、对话框6.1 消息框6.2 yes/no对话框6.3 表单输入框6.4 密码输入框6.5 菜单栏6.6 单选对话框6.7 多选对话框6.8 进度条 七、常用写作技巧7.1 EOF…

我,ChatGPT,打钱

「作者简介」:CSDN top100、阿里云博客专家、华为云享专家、网络安全领域优质创作者 「推荐专栏」:对网络安全感兴趣的小伙伴可以关注专栏《网络安全入门到精通》 一、ChatGPT是个啥? chat:表示“聊天”。 GPT:则是G…

提升Python函数调用灵活性:参数传递类型详解

前言 在Python编程中,函数参数起着非常重要的作用。函数参数允许我们向函数传递数据,并在函数内部使用这些值。Python提供了多种参数传递类型,包括位置参数、关键字参数、默认参数、可变数量的位置参数、可变数量的关键字参数。这些不同的参数…

数据结构——串(字符串)

文章目录 **一 串的定义和实现****1 定义****2 串的存储结构****2.1 定长顺序存储表示****2.2 堆分配存储表示****2.3 块链存储表示** **3 串的基本操作** **二 串的模式匹配****1 简单的模式匹配算法****2 串的模式匹配算法——KMP算法****2.1 字符串的前缀,后缀和…

一起学SF框架系列5.4-模块Beans-DefaultListableBeanFactory

在生成ApplicationContext过程中,AbstractRefreshableApplicationContext.refreshBeanFactory()完成旧BeanFactory关闭,创建新的BeanFactory,即new DefaultListableBeanFactory(…)。然后bean实例化时调用本类的preInstantiateSingletons方法…