JavaScript:if-else类型

目录

任务描述

相关知识

if语句

if-else语句

匹配问题

编程要求

任务描述

本关任务:根据成绩判断考试结果。

相关知识

在编程中,我们常常根据变量是否满足某个条件来执行不同的语句。

JavaScript中利用以if关键字开头的条件语句达到以上目的,根据if后面括号内表达式的计算结果来进行分支控制。

if语句

一段完整的JavaScript语句相当于一条主干路,从第一句开始执行直到最后一句。而if语句是一条连接在干路上的支路,满足某个条件时程序进入支路中执行,执行完后回到干路。如下所示:

条件成立指if后面的括号内的表达式的计算结果为true

if语句的结构为:

if(表达式)
{//上面的表达式成立则执行本语句语句;
}

比如下面的例子会根据a的正负输出相应的结果:

//求一个数的绝对值
function abs(a) {if(a < 0) {//如果a是负数a = -a;//取反}return a;
}

if-else语句

if-else相当于干路分成了两条支路,程序执行遇到分支的时候,必须且只能选择其中一条继续执行,结束后回到干路。如下:

条件成立时执行语句1,这里的语句1是条件成立时你希望执行的语句,条件不成立时执行语句2

语句结构为:

if(条件表达式)
{//条件成立执行语句1语句1;
}
else
{//条件不成立执行语句2语句2;
}

下面是一个具体的例子:

//a为正数或0返回1,a为负数返回0
function num(a) {if(a >= 0) {return 1;}else {return 0;}
}

匹配问题

多个if-else连接起来的时候会出现匹配问题,如下面的例子:

function abs(a) {if(a >= 0)if(a > 0)a = 1;elsea = -1;return a;
}

从代码的缩进角度看来,程序中的else和第一个if实现了匹配。但是,实际上else匹配的是第二个if,因为JavaScript中的else遵循的是就近匹配,即else会和最近的if组合成一个完整的if-else结构。

建议:if语句执行部分加{},防止出现 if-else不匹配问题。

编程要求

本关的编程任务是补全右侧代码片段中BeginEnd中间的代码,具体要求如下:

  • 根据分数a(百分制)返回考试结果;

  • a小于60分返回unpass,否则返回pass

function mainJs(a) {a = parseInt(a);//请在此处编写代码/********** Begin **********/if (a < 60) {return "unpass";}else {return "pass";}/********** End **********/
}

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

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

相关文章

商城项目回顾

哈哈&#xff0c;准备期末考试去了&#xff0c;项目停了一段时间。现在又忘的差不多了。所以专门写一篇博客总结前期项目的知识点。 Client软件包 代码加总结&#xff1a; 这段代码实现了一个简单的客户端程序&#xff0c;用于与服务器建立连接、发送登录信息并接收服务器的响…

笔记:tencentos2.4升级gcc4到gcc8.5

由于开发需要将tencentos2.4的GCC版本升级到和cat /proc/version中GCC8.4较接近的版本。 过程如下&#xff1a; 首先 ls -al /etc/yum.repos.d/ 观察tlinux.repo 可以看到类似&#xff1a; [tlinux] nametlinux-$releasever - tlinux baseurlhttp://mirrors.tencent.com/t…

在主线程和非主线程调用 DispatchQueue.main.sync { }

在 Swift 中&#xff0c;DispatchQueue.main.sync { } 的行为取决于当前执行代码的线程。以下是详细的说明&#xff1a; 主线程调用 DispatchQueue.main.sync { } 当在主线程上调用 DispatchQueue.main.sync { } 时&#xff0c;会发生死锁&#xff08;Deadlock&#xff09;。…

|从零搭建网络| VisionTransformer网络详解及搭建

&#x1f31c;|从零搭建网络| VisionTransformer系列网络详解及搭建&#x1f31b; 文章目录 &#x1f31c;|从零搭建网络| VisionTransformer系列网络详解及搭建&#x1f31b;&#x1f31c; 前言 &#x1f31b;&#x1f31c; VIT模型详解 &#x1f31b;&#x1f31c; VIT模型架…

【Perl CGI脚本全解析】打造动态Web应用的秘籍

标题&#xff1a;【Perl CGI脚本全解析】打造动态Web应用的秘籍 在Web开发的早期&#xff0c;Perl因其强大的文本处理能力和易于编写的CGI脚本而成为开发动态网站的热门选择。尽管现代Web开发已经涌现了许多新的技术和框架&#xff0c;但Perl CGI脚本依然在某些场景下发挥着作…

计算机相关专业入门

IT专业入门&#xff0c;高考假期预习指南 七月来临&#xff0c;各省高考分数已揭榜完成。而高考的完结并不意味着学习的结束&#xff0c;而是新旅程的开始。对于有志于踏入IT领域的各位小伙伴&#xff0c;这个假期是开启探索IT世界的绝佳时机。作为该领域的前行者&#xff0c;…

mybatis、mybatis-plus插件开发,实现数据脱敏功能

首先说一下mybatis中四大组件的作用&#xff0c;下面开发的插件拦截器会使用 四大组件Executor、StatementHandler、ParameterHandler、ResultSetHandler Executor&#xff1a; Executor 是 MyBatis 中的执行器&#xff0c;负责 SQL 语句的执行工作。它通过调度 StatementHan…

python基础语法 004-3流程控制- while

1 while while 主要用的场景没有 for 循环多。 while循环&#xff1a;主要运行场景 我不知道什么时候结束。。。不知道运行多少次 1.1 基本用法 # while 4 > 3: #一直执行 # print("hell0")while 4 < 3: #不会打印&#xff0c;什么都没有print("…

IT之旅启航:高考后IT专业预习全攻略

✨作者主页&#xff1a; Mr.Zwq✔️个人简介&#xff1a;一个正在努力学技术的Python领域创作者&#xff0c;擅长爬虫&#xff0c;逆向&#xff0c;全栈方向&#xff0c;专注基础和实战分享&#xff0c;欢迎咨询&#xff01; 您的点赞、关注、收藏、评论&#xff0c;是对我最大…

opencv 处理图像去噪的几种方法

OpenCV 提供了多种图像去噪的方法&#xff0c;以下是一些常见的去噪技术以及相应的 Python 代码示例&#xff1a; 均值滤波&#xff1a;使用像素邻域的灰度均值代替该像素的值。 import cv2 import numpy as np import matplotlib.pyplot as pltimg cv2.imread("4.jpg&qu…

Java知识点大纲

文章目录 第一阶段&#xff1a;JavaSE1、面向对象编程(基础)1)面向过程和面向对象区别2)类和对象的概述3)类的属性和方法4)创建对象内存分析5)构造方法(Construtor)及其重载6)对象类型的参数传递7)this关键字详解8)static关键字详解9)局部代码块、构造代码块和静态代码块10)pac…

2-24 基于图像处理的细胞计数方法

基于图像处理的细胞计数方法。经过初次二值化、中值滤波后二值化、优化后二值化图像、填充背景色的二进制图像、开运算后的图像一系列运算后&#xff0c;进行标签设置&#xff0c;最终得到细胞总数。程序已调通&#xff0c;可直接运行。 2-24 细胞计数方法 中值滤波后二值化 - …

【C++】 解决 C++ 语言报错:Invalid Cast

文章目录 引言 无效类型转换&#xff08;Invalid Cast&#xff09;是 C 编程中常见且严重的错误之一。当程序试图进行不合法或不安全的类型转换时&#xff0c;就会发生无效类型转换错误。这种错误不仅会导致程序崩溃&#xff0c;还可能引发不可预测的行为。本文将深入探讨无效…

图像增强方法汇总OpenCV+python实现【第一部分:常用图像增强方法】

图像增强方法汇总OpenCVpython实现【第一部分】 前言常用的图像增强方法1. 旋转&#xff08;Rotation&#xff09;&#xff1a;2. 平移&#xff08;Translation&#xff09;&#xff1a;3. 缩放&#xff08;Scaling&#xff09;&#xff1a;4. 剪切变换&#xff08;Shear Trans…

UserWarning: IPython History requires SQLite, your history will not be saved

UserWarning: IPython History requires SQLite, your history will not be saved 很久未打开pycharm&#xff0c;控制台出现爆红 解决方法&#xff1a; 重启pycharm&#xff0c;就好啦&#xff01;&#xff01;&#xff01;我猜测可能是上次pycharm没有关闭就电脑关机&…

56、Flink DataStream 的管理执行配置详解

1&#xff09;概述 1.执行配置 StreamExecutionEnvironment 包含了 ExecutionConfig&#xff0c;它允许在运行时设置作业特定的配置值。 StreamExecutionEnvironment env StreamExecutionEnvironment.getExecutionEnvironment(); ExecutionConfig executionConfig env.get…

《企业实战分享 · 内存溢出分析》

&#x1f4e2; 大家好&#xff0c;我是 【战神刘玉栋】&#xff0c;有10多年的研发经验&#xff0c;致力于前后端技术栈的知识沉淀和传播。 &#x1f497; &#x1f33b; 近期刚转战 CSDN&#xff0c;会严格把控文章质量&#xff0c;绝不滥竽充数&#xff0c;如需交流&#xff…

用PyQt5打造炫酷界面:深入解析pyqt5-custom-widgets

在PyQt5中&#xff0c;使用自定义小部件可以为应用程序增添更多实用性和时尚感。pyqt5-custom-widgets是一个开源项目&#xff0c;提供了一系列有用且时尚的自定义小部件&#xff0c;如开关按钮、动画按钮等。本文将详细介绍pyqt5-custom-widgets的安装和使用方法。 安装 可以…

权限维持Linux---监控功能Strace后门命令自定义Alias后门

免责声明:本文仅做技术交流与学习... 目录 监控功能Strace后门 1、记录 sshd 明文 监控 筛选查看 2、记录sshd私钥 命令自定义Alias后门 1、简单粗鲁实现反弹&#xff1a; 靶机替换命令 攻击机监听上线 2.升级(让命令正常) 将反弹命令进行base64编码 替换alias命令 …

【Linux】--help,man page , info page

我们知道Linux有很多的命令&#xff0c;那LInux要不要背命令&#xff1f; 答案是背最常用的那些就行了 那有的时候我们想查询一些命令的详细用法该怎么办呢&#xff1f; 这里我给出3种方法 1.--help --help的使用方法很简单啊 要查询的命令 --help 我们看个例子 这里我只…