JavaScript基础Day02:流程控制

2023-11-19

1. 顺序结构

2. 分支结构

(1)if语句

if (/* 条件表达式 */) {
  // 执行语句
}

if (/* 条件表达式 */){
  // 成立执行语句
} else {
  // 否则执行语句
}

if (/* 条件1 */){
  // 成立执行语句
} else if (/* 条件2 */){
  // 成立执行语句
} else if (/* 条件3 */){
  // 成立执行语句
} else {
  // 最后默认执行语句
}
  • if

  • if-else

  • if-else if-else if…

    • 三元运算符
    表达式1 ? 表达式2 : 表达式3
    是对if……else语句的一种简化写法
    
    • demo01:输出两数中的较大值
var num1 = 10;
var num2 = 20;
if (num1 > num2) {
    console.log(num1);
} else {
    console.log(num2);
}			//使用三元运算符表达就是  num1>num2 ? num1:num2
  • demo02:等级查询

    • [90,100] —— A
    • [80,90) —— B
    • [70,80) —— C
    • [60,70) —— D
    • [0,60) —— E
var score=prompt("请输入你的分数:");
if(score>=90&&score<=100){
    console.log("A等级");
}else if(score>=80){
    console.log("B等级");
}else if(score>=70){
    console.log("C等级");
}else if(score>=60){
    console.log("D等级");
}else {
    console.log("E等级");
}   //输入90,结果为A等级

(2)switch语句

switch (expression) {
  case 常量1:
    语句;
    break;
  case 常量2:
    语句;
    break;
  case 常量3:
    语句;
    break;
  …
  case 常量n:
    语句;
    break;
  default:
    语句;
    break;
}
  • 如果case中的break省略则会继续执行下一个case

  • switch 语句在比较值时使用的是全等操作符, 因此不会发生类型转换(例如,字符串’10’ 不等于数值 10)

  • default和其中的break都可省略

    • demo03:根据数字输出对应星期
    var num = parseInt(prompt("请输入"));
    switch (num) {
        case 1:
            console.log("星期一");
            break;
        case 2:
            console.log("星期二");
            break;
        case 3:
            console.log("星期三");
            break;
        case 4:
            console.log("星期四");
            break;
        case 5:
            console.log("星期五");
            break;
        case 6:
            console.log("星期六");
            break;
        case 7:
            console.log("星期日");
            break;
        default:
            console.log("输入有误!");
    }
    
    • demo04:控制语句中的布尔类型隐式转换
    var message;
    // 会自动把message转换成false
    if (message) {
        console.log("执行了");
    }
    console.log("未执行");    //未执行
    

    非空字符串 非0数字 true 任何对象————转换为true
    空字符串 0 false null undefined ————转换成false

3. 循环结构

(1)while语句

// 当循环条件为true时,执行循环体,
// 当循环条件为false时,结束循环。
while (循环条件) {
  //循环体
}
  • demo05:计算1-100之间所有数的和
var sum=0;
var i=1;
while (i<=100){
    sum +=i;
    i++;
}
console.log(sum);  //5050

(2)do-while语句

do {
  // 循环体;
} while (循环条件);
  • ==demo06:1-100之间的累加和
var i = 1;
var sum = 0;
do {
  sum += i;	//循环体
  i++;		//自增
} while (i <= 100);//循环条件

while语句和do-while语句的区别:while语句先判断条件,再决定执行循环体;而do-while语句是直接执行循环体,然后再判断条件。

(3)for循环

// for循环的表达式之间用的是;号分隔
for (初始化表达式1; 判断表达式2; 自增表达式4) {
  // 循环体3         //执行顺序 初始化表达式1 - 判断表达式2 - 循环体3 - 自增表达式4
}
  • demo07:五行五列星星
for (var i=0; i<5; i++) {
    for (var j=0; j<5; j++){
        document.write("☆");
    }
    document.write("<br/>")
}

在这里插入图片描述

  • demo08:九九乘法表
for (var i=1;i<=9;i++) {
    for (var j=1;j<=i;j++) {
        document.write(j+"*"+i+"="+i*j+" ");
    }
    document.write("<br/>");
}

在这里插入图片描述


说明:文章是笔记类型,如果有问题欢迎留言~~~
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

JavaScript基础Day02:流程控制 的相关文章

  • 如何调整 jQuery UI 手风琴的高度?

    在我的用户界面中 我有一个像这样的手风琴设置 div h3 Section 1 h3 div content div More sections div 手风琴在刚形成时工作正常 并且似乎可以很好地适应每个部分内的内容 但是 如果我在 ac
  • 从恶意 PDF 中提取 JavaScript

    我有一个 PDF 文件 据我所知 它包含一个 JavaScript 脚本文件 该文件会执行恶意操作 但目前还不确定具体是什么 我已经成功解压缩了 PDF 文件并获得了纯文本 JavaScript 源代码 但它的代码本身隐藏在我以前从未见过的
  • 节点 aws-sdk s3 文件上传大小

    当使用 Node js 的 aws sdk npm 插件时 我可以使用以下代码上传 50kb 的 pdf 到 AWS s3 var params Bucket BUCKET Key pdf key Body file ContentType
  • jQuery 中的按钮点击

    我是 jQuery 新手 我想使用按钮单击事件来引发警报框 这是我的代码 但它似乎不起作用
  • 使用 javascript/jquery 仅选择特定元素后面的文本

    如下面的代码片段所示 我有多个文本 div 其中有粗体部分 然后是换行符 然后是一段文本 我可以 find 粗体部分 但如何使用 javascript jquery 只获取粗体部分后面换行符后面的文本部分 div class thecont
  • 如何覆盖由 Asp.Net UpdatePanel (动态)添加的 Javascript 函数?

    我遇到了一些麻烦 我只能想象是 Javascript 范围问题以及 Microsoft Asp Net 客户端框架 由于上述原因这个问题 https stackoverflow com questions 18862565 what is
  • 滚动到 HTML 网站中的顶部 JavaScript

    我正在尝试在我的网站中实现滚动到顶部功能 www arrow tvseries com 网站上可以看到 按钮 但它无法正常工作 因为单击时它不会滚动到页面顶部 更重要的是 我希望 滚动到顶部按钮 在向下滚动 例如一半页面 时可见 这是 Ja
  • toLocaleLowerCase() 和 toLowerCase() 之间的区别[重复]

    这个问题在这里已经有答案了 我试图fiddle http jsfiddle net xameeramir kr33b0aL with toLocaleLowerCase http www w3schools com jsref jsref
  • 使用嵌套对象进行 Hapi/Joi 验证

    我对我的其中一条路线进行了以下验证 payload keywordGroups Joi array items Joi object keys language Joi string required containsAny Joi arr
  • 如何检查 Google 地图是否已完全加载?

    我正在将 Google 地图嵌入到我的网站中 加载 Google 地图后 我需要启动一些 JavaScript 进程 有没有办法自动检测 Google 地图何时完全加载 包括图块下载等 A tilesloaded 存在应该完全完成此任务的方
  • 多个函数完成后运行回调

    我有多个耗时的函数 我想在它们全部完成后运行一个函数 例如 data x thisTakes2Seconds data y thisTakes5Seconds http post data 我熟悉 Javascript 中回调的概念 但如果
  • 更改卡片布局中的活动项目。扩展JS

    我有一个使用卡片布局的面板 如下所示 var cardpanel new Ext Panel id cardPanel title Card Layout region center layout card activeItem 0 aut
  • R/d3heatmap/shiny - 有没有办法在 d3 工具提示中嵌入图像?

    我想在滚动单元格时在 d3 工具提示中嵌入图像 而不是默认的行 列 值数据 library shiny library d3heatmap ui lt shinyUI fluidPage titlePanel Old Faithful Ge
  • 在 JavaScript 中使用正则表达式验证信用卡输入

    我一直在努力完成这件事但没有成功 我正在使用正则表达式根据通过单选按钮选择的信用卡类型来验证用户输入的信用卡号 但我一直保持警惕if陈述 看起来所有的if else语句经过测试 There is the HTML code fragment
  • 节点护照错误:未知的身份验证策略“本地登录”

    我一直在尝试在nodejs上使用passport进行本地身份验证工作 据我所知 我的所有代码都是正确的 但我不断收到关于 未知身份验证策略 的相同恼人错误 所以也许其他人可以帮助我解决这个问题我的代码如下所示 这是我在nodejs中配置护照
  • 在进程注册后显示 div,woocommerce

    在网站注册过程后 我想显示一个隐藏的div div 位于同一页面中 但注册后 页面将加载并显示相同的页面 这是表单处理程序 php public static function process registration nonce valu
  • 在 angular2 中使用 routerLink 更新模板

    当我移动到另一个模板时 我遇到了模板未更新的问题store location 例如 默认值为Eastleigh如果我搬到USA它将更改为USA但当我去其他地方时它就粘住了USA 我必须刷新页面以便模板更新Collection Store 事
  • Javascript/jQuery/等中测量经过时间/一段时间后触发事件的方法

    我正在尝试使用 HTML5 Javascript 制作一个简单的游戏 我想对活动施加时间限制 例如 当玩家进入一个屋顶正在向他们逼近的房间时 我想给他们一些时间来做出决定 然后自动发生其他事件 但是 如果他们做出决定 我根本不希望触发定时功
  • 流量类型问号?

    对使用 感到困惑在流动中 据我所知 感谢参数之前或之后的流类型问号 https stackoverflow com questions 47314749 flow type question mark before or after par
  • 删除 JavaScript 中的不间断空格

    我无法从字符串中删除空格 首先我要转换div to text 删除标签 有效 然后我尝试删除 nbsp 字符串的一部分 但它不起作用 知道我做错了什么 newStr myDiv text newStr newStr replace nbsp

随机推荐

  • 详解Arduino Uno开发板的引脚分配图及定义(重要且基础)

    详解Arduino Uno开发板的引脚分配图及定义 重要且基础 https www cnblogs com Bruce H21 p 11555605 html 首先开发板实物图如下 在本篇文章中 我们将详细介绍Arduino开发板的硬件电路
  • 解决vue路由跳转到同一页面的刷新问题

    问题描述 当我使用路由跳转页面时 如果页面跳转是同一个路由 传递的参数不同时 页面不刷新 如下图 待收定金和待收首款其实跳转的是同一个组件 只是他们传递的参数不同而已 当我使用路由进行跳转时 我发现第一次是可以正确跳转的 比如我当前在其他页
  • qt中获取窗口位置和大小

    窗口左上角的位置 含边框 qDebug lt lt this gt frameGeometry x lt lt this gt frameGeometry y lt lt 1 qDebug lt lt this gt x lt lt thi
  • Ubuntu系统下常用的新建、删除、拷贝文件命令

    常用新建 删除 拷贝命令 mkdir 目录名 新建一个文件夹 文件夹在Linux系统中叫做 目录 touch 文件名 新建一个空文件 rmdir 目录名 删除一个空文件夹 文件夹里有内容则不可用 rm rf 非空目录名 删除一个包含文件的文
  • 【C语言】_4.数组

    目录 1 一维数组 2 二维数组 3 数组越界 4 数组作为函数参数 正文 1 一维数组 1 1 数组的创建 1 数组的概念 数组是一组相同类型元素的集合 2 数组的创建方式 type t arr name const n 即数组元素类型
  • AMD yes!拿下Meta后发布新芯片,FP64性能是A100 4.9倍,面向高性能计算和机器学习...

    明敏 发自 凹非寺量子位 报道 公众号 QbitAI AMD造势已久 面向高性能计算的MI200 终于来了 在拿下元宇宙大客户Meta后 AMD乘势而上官宣一系列新芯片 其中就包括这张不断有消息曝出的计算加速卡 它采用6nm工艺 拥有580
  • 第15课 微信小程序behavior组件间的数据共享:

    第15课 微信小程序behavior组件间的数据共享 先看看目录结构 我们先编写一下两my behavior的代码 这里是my behavior js的代码 behavior内还可以嵌套引入behavior my behavior js 引
  • 嵌入式学习:stm32学习路线推荐之思维导图

    从9月1日开始学习STM32后 对于STM32的一些个人总结 1 对于STM32和51的区别 对于 STM32来说 基本的大概都和51单片的内容相似 但是由于STM的引脚和寄存器的数量较多 所以需要一个更加完善的管理机制 导致了 时钟 的产
  • Caused by: org.attoparser.ParseException: Error resolving template [index], template might not exist

    仿牛客论坛 th replace index header 报错 index html中 th fragment header register html中 th replace index header 主要报错是两个 org thyme
  • 递归算法——八皇后问题 python

    研究了一下午的八皇后算法 可算是搞明白了 为了避免以后忘记 还是写个博客吧 可能会跟其他文章有相似之处 最终还是希望能好好学习算法 都是经过自己思考后亲自写的代码 虽然过程比较艰难 我写了很多注释 参考B站视频链接 2021第十二届蓝桥杯青
  • 前端移动Web第四天案例:阿里百秀首页-响应式布局(bootstrap框架)

    阿里百秀首页案例 技术选型 方案 我们采取响应式页面开发方案 技术 bootstrap框架 设计图 本设计图采用 1280px 设计尺寸 1 页面布局分析 2 屏幕划分分析 屏幕缩放发现 中屏幕 和 大屏幕布局 是一致的 因此我们列 定义为
  • Matlab实现蚂蚁群算法(附上多个完整仿真源码)

    蚂蚁群算法是一种模拟自然界中蚂蚁行为的优化算法 其具有全局搜索能力和适应性强的特点 被广泛应用于组合优化问题中 本文将介绍如何使用Matlab实现蚂蚁群算法 文章目录 1 蚂蚁群算法原理 2 Matlab实现蚂蚁群算法 3 代码实现 4 结
  • JS常用方法总结

    数组常用的方法 方法 语法 描述 增加方法 splice arr splice 起始下标 长度 添加的元素1 元素2 arr splice 3 0 0 1 xiaolv 从数组中添加或删除元素 push arr push xiaonan v
  • 数据库双服务器系统设计,面向数据库服务器的高可用性系统的设计与实现

    摘要 随着计算机技术的飞速发展 数据库的应用已遍及各行各业 它们往往维系着整个系统的生命 一旦数据库崩溃造成数据丢失或者暂停服务 那将给用户或企业带来不可估量的损失 尤其是银行系统与电子商务交易系统 一些不可预料的故障或停机造成的经济损失可
  • Java内存区域

    Java内存区域 深入理解Java虚拟机 第2版 Java虚拟机在执行Java程序的过程中会把它所管理的内存分为若干个不同的数据区域 Java虚拟机运行时数据区 其中蓝色部分为共享区域 浅色部分为各线程私有 程序计数器 一块较小的区域 可以
  • 每月摘录--2023年4月

    企业 04月07日 阿里云宣布自研大模型 通义千问 开始邀请用户测试体验 4月10日消息 此前3月29日凌晨 腾讯旗下的微信和QQ等业务曾出现崩溃状况 包括微信语音对话 朋友圈 微信支付 以及QQ文件传输 QQ空间和QQ邮箱在内的多个功能无
  • 基于RFID技术的电力计能表仓储管理系统—铨顺宏

    基于RFID技术的电力计能表仓储管理系统 1 应用背景 电力计量中心是电力行业的电能计量检测机构 承担辖区内电能计量器具安全生命周期管理的职能 包括采购 仓储 检测 配送 安装 运行监测等各个环节 随着城网改造和居民一户一表工作的深入进行
  • 数据库课程设计mysql编程_数据库课程设计[完整版].doc

    可编辑版 Word完美格式 HUNAN CITY UNIVERSITY 数据库系统课程设计 设计题目 宿舍管理信息系统 姓 名 学 号 专 业 信息与计算科学 指导教师 20年 12月1日 目 录 TOC o 1 3 h z HYPERLI
  • ctfshow-Log4j复现-log4j复现

    1 买VPS 打开mobax进行ssh连接 开两个终端 一个终端开启监听 另一个终端进入JNDIExploit 1 2 SNAPSHOT jar所在的目录jndiexploit执行下面命令 java jar JNDIExploit 1 2
  • JavaScript基础Day02:流程控制

    文章目录 1 顺序结构 2 分支结构 1 if语句 2 switch语句 3 循环结构 1 while语句 2 do while语句 3 for循环 1 顺序结构 2 分支结构 1 if语句 if 条件表达式 执行语句 if 条件表达式 成