当前位置: 首页 > news >正文

JavaScript如何使用if语句

JavaScript的if语句可以让我们根据某些条件来执行不同的代码块。使用if语句的基本思路是将要执行的代码放在括号内,并使用if关键字进行匹配。下面是一些例子:

简单的if语句:

let age = 18;  
if (age >= 18) {  console.log("You are an adult");  
} else {  console.log("You are not an adult");  
}

上述代码会输出“You are an adult”,因为年龄大于或等于18岁。

多条件if语句:

let day = 25;  
let dayOfWeek = "Monday";  
if (day === 22) {  console.log("It's Tuesday");  
} else if (day < 22 || day === 22 && dayOfWeek !== "Saturday") {  console.log("It's still Monday");  
} else {  console.log("It's Tuesday");  
}

上述代码会输出“It’s Tuesday”,因为今天是星期二,而且星期二是不包括星期六的。如果星期六被认为是星期日,则输出“It’s still Monday”。

嵌套if语句:

let isStudent = true;  
let day = 25;  
if (isStudent && day >= 18) {  if (dayOfWeek === "Friday" || dayOfWeek === "Saturday" || dayOfWeek === "Sunday") {  isStudent = false;  } else {  console.log("You must be a student and weekday is valid");  }  
} else {  console.log("You are not a student and weekday is invalid");  
}

上述代码会输出“You must be a student and weekday is valid”,因为在日历上某一天周五或周六的晚上6点以后的某一天没有注册成为学生,输出该信息。在这种情况下,day变量为25,表示该晚上不在校。然后还可以通过条件执行如下的操作:弹出对话框询问“日历是否正常工作”以判断操作结果,输出到控制台“Please use weekdays instead”或其他结果,总之通过else-if或嵌套语句我们可以在基本if语句的基础上创造出复杂而有趣的条件语句。

大括号内的多条件判断:

let day = 25;  
let dayOfWeek = "Monday";  
let isStudent = true;  
if (day === 22) {  if (dayOfWeek === "Friday" || dayOfWeek === "Saturday" || dayOfWeek === "Sunday") {  isStudent = false;  } else {  console.log("You must be a student and weekday is valid");  }  
} else if (day < 22 || day === 22 && dayOfWeek !== "Saturday") {  console.log("It's still Monday");  
} else {  console.log("It's Tuesday");  
}

上述代码与第3个例子的代码效果相同,但是使用了大括号来明确代码块的结束位置。这种写法更加清晰易懂。

多个条件可以用花括号括起来的写法:

let day = 25;  
let dayOfWeek = "Monday";  
let isStudent = true;  
if ((day >= 18 && day <= 22) || dayOfWeek === "Friday" || dayOfWeek === "Saturday" || dayOfWeek === "Sunday") {  isStudent = false;  
} else {  console.log("You must be a student and weekday is valid");  
}

上述代码将多个条件放在一对花括号中,使用逗号分隔。这种写法也更加清晰易懂。

使用逻辑运算符进行多条件判断:

let day = 25;  
let dayOfWeek = "Monday";  
let isStudent = true;  
if (dayOfWeek === "Monday" || dayOfWeek === "Tuesday" || dayOfWeek === "Wednesday" || dayOfWeek === "Thursday" || dayOfWeek === "Friday" || dayOfWeek === "Saturday" || dayOfWeek === "Sunday") {  isStudent = false;  
} else if (day >= 18 && day <= 22) {  console.log("You are a student");  
} else if (day < 22 && day !== 22) {  console.log("You are not a student");  
} else {  console.log("It's a Monday");  
}

上述代码使用逻辑与运算符对多个条件进行判断。

在多条件if语句中使用switch语句:

let day = 25;  
let dayOfWeek = "Monday";  
let isStudent = true;  
switch (day) {  case 22:  if (dayOfWeek === "Friday" || dayOfWeek === "Saturday" || dayOfWeek === "Sunday") {  isStudent = false;  } else {  console.log("You must be a student and weekday is valid");  }  break;  case 18:  if (dayOfWeek === "Friday" || dayOfWeek === "Saturday" || dayOfWeek === "Sunday") {  isStudent = false;  } else {  console.log("You are a student and weekday is valid");  }  break;  default:  console.log("Other weekday is invalid");  
}

上述代码中使用了switch语句来判断day的值是否在18到22之间,并且根据dayOfWeek的值判断isStudent的值。

这些是JavaScript中if语句的一些基本用法,你可以根据自己的需求和喜好进行学习和使用。

相关文章:

JavaScript如何使用if语句

JavaScript的if语句可以让我们根据某些条件来执行不同的代码块。使用if语句的基本思路是将要执行的代码放在括号内&#xff0c;并使用if关键字进行匹配。下面是一些例子&#xff1a; 简单的if语句&#xff1a; let age 18; if (age > 18) { console.log("You are…...

XSS攻击以及java应对措施

文章目录 一. XSS攻击介绍1. 前端安全2. xss攻击简介3. xss的攻击方式 二. java应对xss攻击的解决方案1. 强制修改html敏感标签内容2. 利用过滤器过滤非法html标签 一. XSS攻击介绍 1. 前端安全 随着互联网的高速发展&#xff0c;信息安全问题已经成为企业最为关注的焦点之一…...

yolo 训练

这里写目录标题 分配训练集&Validation数量数据集读取读取全部文件夹替换路径 loss weightNMSBBox_IOUEIou Optimizer 分配训练集&Validation数量 validation_size training_size * validation_ratio / (1 - validation_ratio)training_size 219 validation_ratio …...

谷歌chrome浏览器升级新版后字体显示不清楚解决方案

谷歌chrome浏览器升级新版后字体显示不清楚解决方案 参考图片&#xff1a; Chrome更新至版本Chrome 109.0.5414.120 字体看不清 浏览器症状与表现 Chrome更新至版本Chrome 109.0.5414.120 字体看不清&#xff1b;会很细&#xff0c;在设置中选择自定义的字体&#xff0c;仍无法…...

在外包干了三年,我废了……不吹不黑!

没错&#xff0c;我也干过外包&#xff0c;一干就是三年&#xff0c;三年后&#xff0c;我废了…… 虽说废的不是很彻底&#xff0c;但那三年我几乎是出差了三年、玩了三年、荒废了三年&#xff0c;那三年&#xff0c;我的技术能力几乎是零成长的。 说起这段三年的外包经历&a…...

【Vue】学习笔记-消息的订阅与发布

消息的订阅与发布(基本不用) 消息订阅与发布(pubsub)消息订阅与发布是一种组件间的通信的方式&#xff0c;适用于任意组件间通信 消息订阅与发布 1.订阅消息∶消息名 2.发布消息︰消息内容 消息订阅与发布的工作流程&#xff1a; &#xff08;A是订阅者&#xff0c;B是发布…...

大疆无人机 MobileSDK(遥控器/手机端)开发 v5版<1>

文章目录 概要整体架构流程技术细节SDK 架构体系概述层级架构智能任务空白项目集成 MSDK新建空白项目新建 MyApplication.kt 文件修改 build.gradle(Module) 文件修改 AndroidManifest.xml 文件修改 MainActivity.kt 文件导入 UXSDK 开源框架4.X 和 5.X 版本差异说明DJIKey差异…...

azkaban介绍

目录 为什么需要工作流调度系统 什么是azkaban azkaban适用场景 azkaban特点 常见的工作流调度系统 azkaban和Ooize特性对比 azkaban的架构 azkaban调度的任务有可能有那些类型 总结 为什么需要工作流调度系统 一个完整的大数据分析系统&#xff0c;必然由很多任务单…...

自学黑客(网络安全)必学内容

随着时代的发展&#xff0c;经济、社会、生产、生活越来越依赖网络。而随着万物互联的物联网技术的兴起&#xff0c;线上线下已经打通&#xff0c;虚拟世界和现实世界的边界正变得模糊。这使得来自网络空间的攻击能够穿透虚拟世界的边界&#xff0c;直接影响现实世界的安全。 …...

Java每日一练(20230518) 移除元素、跳跃游戏II、复原IP地址

目录 1. 移除链表元素 &#x1f31f; 2. 跳跃游戏 II &#x1f31f;&#x1f31f; 3. 复原 IP 地址 &#x1f31f;&#x1f31f; &#x1f31f; 每日一练刷题专栏 &#x1f31f; Golang每日一练 专栏 Python每日一练 专栏 C/C每日一练 专栏 Java每日一练 专栏 1. 移…...

diff命令和vimdiff命令

文章目录 diff命令基本用法选项示例 vimdiff命令命令格式选项说明常用操作 diff命令 diff命令是一个文本比较工具&#xff0c;用于比较两个文件的内容&#xff0c;它会逐行比较两个文件的内容并输出它们之间的差异。下面是diff命令的常用选项和用法&#xff1a; 基本用法 比…...

AcWing 797.差分(C++)

目录 1.题目描述 2.AC 1.题目描述 797.差分 输入一个长度为 nn 的整数序列。 接下来输入 mm 个操作&#xff0c;每个操作包含三个整数 l,r,cl,r,c&#xff0c;表示将序列中 [l,r][l,r] 之间的每个数加上 cc。 请你输出进行完所有操作后的序列。 输入格式 第一行包含两…...

Python每日一练(20230515) 只出现一次的数字 I\II\III

目录 1. 只出现一次的数字 Single Number 2. 只出现一次的数字 II Single Number II 3. 只出现一次的数字 III Single Number III &#x1f31f; 每日一练刷题专栏 &#x1f31f; Golang每日一练 专栏 Python每日一练 专栏 C/C每日一练 专栏 Java每日一练 专栏 leetcod…...

基于【EasyDL】【图像分类】实现农作物病害识别小程序

内容、数据集来源:基于飞桨的农作物病害智能识别系统 - 飞桨AI Studio 项目背景 联合国粮食及农业组织的一份报告表明&#xff0c;每年农业生产的自然损失中有三分之一以上是由农业病虫害造成的&#xff0c;使这些成为当前影响农业生产和农业生产的最重要因素。需要考虑的农业…...

元宇宙又“死”了!Epic老板:你当6亿用户是摆设?

“扎克伯格花了数年时间试图让Metaverse成为现实&#xff0c;但现在它已被AI取代&#xff0c;并走向科技创意的坟墓。”一篇表达“元宇宙已死”的文章近期在推特上引发热议&#xff0c;而游戏制作公司Epic Games CEO Tim Sweeney的还击更是让这个话题热上加热。 “搞一次在线守…...

阶段小结2022

工作马上一年&#xff0c;对于一年工作能力提升可能逐步在提升&#xff0c;业务能力也在慢慢提升&#xff0c;虽然没有一年前想象的飞起状态&#xff0c;但是刚接触这一行&#xff0c;希望越来越好。 之前每次的遇到的问题其实都会在笔记或者博客中记录&#xff0c;但是没有整体…...

linux0.12-8-11-vsprintf.c

[383页] 1、 这一小节可以不看代码如何实现&#xff0c;因为标准的C库函数&#xff1b; 2、 等自己看完的这本书&#xff0c;有兴趣过来研究研究也是可以的。 8-11 vsprintf.c程序 8-11-1 功能描述 该程序主要包括vsprintf(),用于对参数产生格式化的输出。由于该函数是C函数…...

Node.js 与 WebAssembly

目录 1、简介 2、关键概念 3、生成WebAssembly模块 4、如何使用它 5、与操作系统交互 1、简介 首先&#xff0c;让我们了解为什么WebAssembly是一个很棒的工具&#xff0c;并学会自己使用它。 WebAssembly是一种类似汇编的高性能语言&#xff0c;可以从各种语言编译&…...

OpenCL编程指南-4.4矢量操作符

矢量操作符 如下描述了可用于矢量数据类型或矢量和标量数据类型组合的各类操作符。 算术操作符 算术操作符&#xff08;加&#xff08;)、减&#xff08;–)、乘&#xff08;*&#xff09;和除&#xff08;/)&#xff09;&#xff0c;可以作用于内置整数、浮点标量和矢量数…...

索洛模型(二)

索洛模型(二) 文章目录 索洛模型(二)[toc]1 事实2 假设2.1 对生产函数的假设2.2对投入要素的假设 3 索洛模型的动态学3.1 k k k的动态学3.2 平衡增长路径 4 储蓄率变化的影响4.1 对产出的影响4.2 对消费的影响 索罗经济增长模型&#xff08;Solow growth model&#xff09;&am…...

After Effects (AE)2026超详细保姆级下载安装教程 附软件功能详解(新手零基础适用)

一、为什么一定要升级AE2026&#xff1f; After Effects 2026 安装包下载 软件安装包下载链接&#xff1a; https://wcnv2snkmluk.feishu.cn/base/GuWabFrrsalVHPs6p0kcIG2EnKh?fromfrom_copylink 1. 3D功能大爆发&#xff0c;不用再依赖C4D了 以前做个简单的3D立方体&#x…...

Scikit-learn 全景解读:机器学习的“瑞士军刀”

文章目录引言&#xff1a;传统机器学习的标准化工具箱一、scikit-learn 算法体系总览二、核心设计哲学与统一 API1. 一致性原则&#xff1a;统一的估计器接口2. 模块化设计&#xff1a;管道机制三、算法原理与数学本质1. 监督学习算法家族2. 无监督学习算法四、模型选择与评估体…...

5分钟部署Qwen3-Embedding-4B:支持100+语言的文本嵌入

5分钟部署Qwen3-Embedding-4B&#xff1a;支持100语言的文本嵌入 1. Qwen3-Embedding-4B简介 Qwen3-Embedding-4B是通义千问团队最新推出的文本嵌入模型&#xff0c;专为语义搜索、知识检索等任务优化。作为Qwen3系列的一员&#xff0c;它继承了基础模型强大的多语言能力和长…...

Nano-Banana Studio可部署方案:本地离线模型免网络依赖部署

Nano-Banana Studio可部署方案&#xff1a;本地离线模型免网络依赖部署 1. 为什么需要一个“衣服拆解展示台”&#xff1f; 你有没有遇到过这样的场景&#xff1a;服装设计师要向客户展示一件夹克的全部结构细节&#xff0c;却只能靠手绘草图或零散的局部照片&#xff1b;工业…...

别再死磕Ubuntu16.04了!Zephyr RTOS环境搭建保姆级避坑指南(附nRF52840DK实战)

别再死磕Ubuntu16.04了&#xff01;Zephyr RTOS环境搭建保姆级避坑指南&#xff08;附nRF52840DK实战&#xff09; 如果你正在尝试搭建Zephyr RTOS开发环境&#xff0c;却频繁遭遇各种诡异错误&#xff0c;很可能是因为你还在使用Ubuntu 16.04这样的老旧系统版本。作为一款面向…...

从寄存器到库函数:手把手教你理解STM32F103标准库的封装逻辑

从寄存器到库函数&#xff1a;手把手教你理解STM32F103标准库的封装逻辑 第一次接触STM32标准库时&#xff0c;看着那些封装良好的函数&#xff0c;我总有种雾里看花的感觉——明明每个函数都能用&#xff0c;却不知道它们背后究竟做了什么。直到有一天调试GPIO输出异常&#x…...

TCP八股

文章目录TCPTCP连接如何确保可靠性确认应答序号与确认序号超时重传连接管理三次握手(建立连接)四次挥手(断开连接)滑动窗口快速重传流量控制拥塞控制TCP和UDP的区别UDP怎么实现可靠传输TCP连接三次握手的过程, 为什么是三次, 可以是两次或者更多吗?TCP连接四次挥手的过程, 为什…...

Qwen2-VL-2B-Instruct实战:自动化运维中的服务器日志截图分析与告警报告生成

Qwen2-VL-2B-Instruct实战&#xff1a;自动化运维中的服务器日志截图分析与告警报告生成 1. 引言 想象一下这个场景&#xff1a;凌晨三点&#xff0c;你的手机突然被一阵急促的告警铃声吵醒。你睡眼惺忪地打开电脑&#xff0c;登录到服务器监控平台&#xff0c;眼前是几十个图…...

物业费不用白交!日常消费直接抵扣

家人们&#xff0c;发现个神奇操作&#xff01;最近有公司在搞“智慧社区”&#xff0c;玩法挺有意思&#xff1a;你在小区周边吃饭、买菜、充电费…这些日常花的钱&#xff0c;居然能变成物业费&#xff01;&#x1f447;&#x1f4b0; 核心就一句&#xff1a;花该花的钱&…...

Diablo Edit2:终极暗黑破坏神II存档编辑器完整指南

Diablo Edit2&#xff1a;终极暗黑破坏神II存档编辑器完整指南 【免费下载链接】diablo_edit Diablo II Character editor. 项目地址: https://gitcode.com/gh_mirrors/di/diablo_edit 还在为刷不到心仪的装备而烦恼吗&#xff1f;想要体验不同技能组合却不想重新练级&a…...