2_js运算符与流程控制语句

news2024/9/24 15:19:30

1. 运算符的应用

1.1 算数运算符

  • 浮点数的精度问题

    • 浮点数值的最高精度是17位小数,不要直接判断两个浮点数是否相等。

    var result = 0.1 + 0.2;    // 结果不是 0.3,而是:0.30000000000000004
    console.log(0.07 * 100);   // 结果不是 7,  而是:7.000000000000001
  • 课堂案例:01.算数运算符.html

1.2 ++运算符
  • 课堂案例:02.++运算符.html

var num1 = 10;
num1++; // num = num + 1    ++num;
console.log(num1);
var num2 = 10;
// console.log(num2++ + 10);    //先执行表达式再自增
console.log(++num2 + 10);       //先自增再执行表达式
console.log(num2);
1.3 比较运算符

console.log(18 == '18');
console.log(18 === '18');
  • 课堂案例:03.比较运算符.html

1.4 逻辑运算符

  • 为什么是两个符号呢?

    • 是程序执行效率的问题:如果&&在判断的时候,第一个条件为false,那么这个时候就没有必要再判断第二个条件了,因为有一个是false结果肯定是false。

  • &&:两边都是 true才返回 true,否则返回 false,即两个条件必须都满足才是true

  • ||:两边都是 true才返回 true,否则返回 false,即两个条件只需要满足一个就是true

  • !:表示取反

    var isOk = !true;
    console.log(isOk);  // false

  • 课堂案例:04.逻辑运算符.html

  • 课堂案例:05.逻辑运算符练习.html

1.5 赋值运算符

var age = 10;
age += 5;  // 相当于 age = age + 5;
age -= 5;  // 相当于 age = age - 5;
age *= 10; // 相当于 age = age * 10;
  • 课堂案例:06.赋值运算符.html

2. 流程控制语句

2.1 流程控制概念
  • 分支结构:根据不同的条件执行不同的逻辑代码

  • 循环结构:重复执行表达式,直到不满足条件为止

2.2 If条件判断语句
  • JS提供了两种条件判断语句:if语句、switch语句

  • 课堂案例:07.if语句.html

  • 课堂案例:08.if案例使用.html

    // 条件成立执行代码,否则什么也不做
    if (条件表达式) {
        // 条件成立执行的代码语句
    }
    ​
    if (13 > 5) {
        alert('满足条件执行');
    }
    ​
    console.log("code...")

  • if else语句:

// 条件成立  执行 true 否则执行else
if (条件表达式) {
    // 返回true执行代码块
} else {
    // 返回false执行代码块
}
  • 课堂案例:09.if else语句.html

  • if else if 语句:

// 当有多个条件的时候如何执行代码块呢?
if (条件表达式1) {
    语句1;
} else if (条件表达式2)  {
    语句2;
} else if (条件表达式3)  {
   语句3;
 ....
} else {
    // 上述条件都不成立执行此处代码
}
  • 课堂案例:10.if else if语句.html

2.3 三元表达式
  • 语法结构:表达式 ? 结果1 : 结果2;

  • 如果表达式为 true ,返回第一个值否则返回第二个值。

  • 课堂案例:11.三元表达式.html

var number = 100;
var result = number > 110 ? "yes" : "no";
console.log(result);
2.4 switch分支流程控制
switch( 表达式 ){ 
    case value1:
        // 表达式 等于 value1 时要执行的代码
        break;
    case value2:
        // 表达式 等于 value2 时要执行的代码
        break;
    default:
        // 表达式 不等于任何一个 value 时要执行的代码
}
  • 注意: 执行case 里面的语句时,如果没有break,则继续执行下一个case里面的语句。

  • 课堂案例:12.switch分支语句.html

  • 课堂案例:13.switch案例练习.html

2.5 什么时候使用switch什么时候使用if语句
  • switch更多用来表示状态,而if用户常用的判断。

  • case语句里面不适合写大量的代码

  • if 语句里面适合写大量的代码

3. 循环

3.1 for循环
  • 课堂案例:14.为什么会需要循环.html

  • 语法结构

    for(初始化变量; 针对变量的判断条件; 变量操作){
        //循环体
    }
  • 断点调试的应用

    • 打开浏览器控制台

    • 然后点击Source在源代码中打断点

    • 课堂案例:15.通过断点调试来检查循环的值.html(重要)

  • 课堂案例:16.for循环案例1.html

  • 课堂案例:17.for循环案例2.html

  • 课堂案例:18.for循环案例3.html

  • 课堂案例:19.for循环案例4.html

  • 课堂案例:20.for循环案例5.html

3.2 嵌套for循环
for (外循环的初始; 外循环的条件; 外循环的操作表达式) {
    for (内循环的初始; 内循环的条件; 内循环的操作表达式) {  
       需执行的代码;
   }
}
​
课堂案例:25.嵌套for循环.html
课堂案例:26.嵌套for循环案例1.html
课堂案例:27.嵌套for循环案例2.html
课堂案例:28.嵌套for循环案例3.html
3.3 while循环
  • while语句的语法结构如下:

while (条件表达式) {
    // 满足条件的代码块
}
  • 执行流程:

    • 先执行条件表达式,如果结果为 true,则执行循环体代码;如果为 false,则退出循环,执行后面代码

    • 执行循环体代码

    • 循环体代码执行完毕后,程序会继续判断执行条件表达式,如条件仍为true,则会继续执行循环体,直到循环条件为 false 时,整个循环过程才会结束

  • 使用 while 循环时一定要注意,它必须要有退出条件,否则会成为死循环

3.4 do-while循环
  • do... while 语句的语法结构如下:

do {
    // 循环体代码 - 条件表达式为 true 时重复执行循环体代码
} while(条件表达式);
  • 执行流程

    • 先执行一次循环体代码

  • 再执行条件表达式,如果结果为 true,则继续执行循环体代码,如果为 false,则退出循环,继续执行后面代码

    注意:先再执行循环体,再判断,do…while循环语句至少会执行一次循环体代码

3.5 continue、break
  • continue 关键字用于立即跳出本次循环,继续下一次循环(本次循环体中 continue 之后的代码就会少执行一次)。

例如,吃5个包子,第3个有虫子,就扔掉第3个,继续吃第4个第5个包子,其代码实现如下:

 for (var i = 1; i <= 5; i++) {
     if (i == 3) {
         console.log('这个包子有虫子,扔掉');
         continue; // 跳出本次循环,跳出的是第3次循环 
      }
      console.log('我正在吃第' + i + '个包子呢');
 }
  • break 关键字用于立即跳出整个循环(循环结束),例如,吃5个包子,吃到第3个发现里面有半个虫子,其余的不吃了,其代码实现如下:

for (var i = 1; i <= 5; i++) {
   if (i == 3) {
       break; // 直接退出整个for 循环,跳到整个for下面的语句
   }
   console.log('我正在吃第' + i + '个包子呢');
 }

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

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

相关文章

CSS设计器的使用

目录 css的概念 css的优势 css的基本语法 html中引入css样式 CSS基本选择器 选择器的使用 初级选择器&#xff1a; 标签选择器 类选择器 id选择器 高级选择器(结构选择器&#xff09; ①后代选择器(E F) ②子选择器(E>F) ③相邻兄弟选择器(EF) ④通用兄弟选择器(…

【halcon深度学习之那些封装好的库函数】determine_dl_model_detection_param

determine_dl_model_detection_param 目标检测的数据准备过程中的有一个库函数determine_dl_model_detection_param “determine_dl_model_detection_param” 直译为 “确定深度学习模型检测参数”。 这个过程会自动针对给定数据集估算模型的某些高级参数&#xff0c;强烈建议…

23 聪明的设计

仅用加法的实在是想不出来。。 #include <iostream> using namespace::std; using std::cout; using std::cin; int ljq(int n) {if(n < 1){return n;}else{return (nljq(n-1));} }int main() {int n;cin >> n;std::cout << ljq(n);return 0; }

软件测试业务梳理的实用技巧

测试业务梳理 在日常的测试工作中&#xff0c;不知道大家是否会有梳理自己测试业务的习惯。我个人觉得这个事情是值得做的&#xff0c;最好还可以培养成一个习惯。 一、为什么要梳理业务&#xff1f; 因为在业务测试中&#xff0c;作为测试人员&#xff0c;熟悉负责的业务是非…

vue黑马之小黑的书架小案例

今天我为大家带来一个小案例&#xff0c;可以帮助你更好的了解v-for的使用 上代码&#xff1a; <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><title>小黑的书架</title> </head> <body>…

LabVIEW开发自动驾驶的双目测距系统

LabVIEW开发自动驾驶的双目测距系统 随着车辆驾驶技术的不断发展&#xff0c;自动驾驶技术正日益成为现实。从L2级别的辅助驾驶技术到L3级别的受条件约束的自动驾驶技术&#xff0c;车辆安全性和智能化水平正在不断提升。在这个过程中&#xff0c;车辆主动安全预警系统发挥着关…

话说“俗”的赵本山被曝要重返春晚

据“花边新闻”称“赵本山被曝要重返春晚”&#xff0c;这个消息虽不知是真的还是假的&#xff0c;都能牵动央视春晚的收视率和凡夫俗子的神经&#xff0c;而且更有值得讨论的价值&#xff0c;所以笔者在此唠嗑唠嗑。 图&#xff1a;来源中关村在线 众所周知&#xff0c;具有二…

命令行方式使用abator.jar生成ibatis相关代码和sql语句xml文件

最近接手一个老项目&#xff0c;使用的是数据库是sql server 2008&#xff0c;框架是springmvc spring ibatis&#xff0c;老项目是使用abator插件生成的相关代码&#xff0c;现在需要增加新功能&#xff0c;要添加几张新表&#xff0c;可是目前网上下载的abator插件&#xf…

【每日一题】【12.20】2828.判别首字母缩略词

&#x1f525;博客主页&#xff1a; A_SHOWY&#x1f3a5;系列专栏&#xff1a;力扣刷题总结录 数据结构 云计算 数字图像处理 力扣每日一题_ 1.题目链接 2828. 判别首字母缩略词https://leetcode.cn/problems/check-if-a-string-is-an-acronym-of-words/ 2.题目描述 今天…

Excel如何将行的值转换为列值?

问题:Excel如何将行的值转换为列值?(如图左表变成右表) 1.用 SUMIFS(求和区域, 条件区域1, 条件1, [条件区域2, 条件2], ...)函数 比如:=SUMIFS($C$2:$C$8,$A$2:$A$8,H3,$B$2:$B$8,"快车") 2.直接用简单的透视表 (1)随机点击目标目标表格任何位置,点击插入…

Java 中单例模式的常见实现方式

目录 一、什么是单例模式&#xff1f; 二、单例模式有什么作用&#xff1f; 三、常见的创建单例模式的方式 1、饿汉式创建 2、懒汉式创建 3、DCL&#xff08;Double Checked Lock&#xff09;双检锁方式创建 3.1、synchronized 同步锁的基本使用 3.2、使用 DCL 中存在的疑…

如何开发一个prompt?prompt的使用有哪些原则?

提示词使用原则 如何开发一个跟自己预期结果接近的提示词&#xff1f;有哪些基本原则&#xff1f; 提示词迭代开发 写提示词时&#xff0c;第一次尝试是值得的&#xff0c;反复完善提示&#xff0c;获得越来越接近你想要的结果 原文来源于B站吴恩达提示工程教学公开课。…

你知道跨站脚本攻击吗?一篇带你了解什么叫做XSS

1.XSS简介 &#xff08;1&#xff09;XSS简介 XSS作为OWASP TOP 10之一。 XSS中文叫做跨站脚本攻击&#xff08;Cross-site scripting&#xff09;&#xff0c;本名应该缩写为CSS&#xff0c;但是由于CSS&#xff08;Cascading Style Sheets&#xff0c;层叠样式脚本&#x…

软件测试真的看不到前途吗?

看到这个问题和问题后的说明&#xff0c;题主的显性问题就有两个&#xff1a; 1、软件测试有没有前途 2、若从事没有前途的测试&#xff0c;该怎么办&#xff08;真的只能转行么&#xff09;&#xff1f; 一、软件测试有没有前途&#xff1f; 先说结论&#xff1a;如果在2020年…

ADS学习笔记(一)——更新中

在ADS中&#xff0c;信号上升时间为信号从0&#xff5e;100&#xff05;所用的时间&#xff0c;而实际上定义的上升边均为10&#xff05;&#xff5e;90&#xff05;&#xff0c;所以可以认为上升边&#xff1d;0.8*ADS设置上升时间。 一、终端开路及短路的反射信号 1.仿真条…

【Python炫酷系列】祝考研的友友们金榜题名吖(完整代码)

文章目录 环境需求完整代码详细分析系列文章环境需求 python3.11.4及以上版本PyCharm Community Edition 2023.2.5pyinstaller6.2.0(可选,这个库用于打包,使程序没有python环境也可以运行,如果想发给好朋友的话需要这个库哦~)【注】 python环境搭建请见:https://want595.…

纳米流体传热与计算机模拟

纳米流体传热与计算机模拟 一、引言 纳米流体传热是一个研究领域&#xff0c;主要关注纳米尺度下流体的传热特性和机制。由于纳米流体的尺寸较小&#xff0c;其传热行为与传统尺度下的流体有很大不同。近年来&#xff0c;随着计算机技术的飞速发展&#xff0c;计算机模拟成为…

C# 将 Word 转化分享为电子期刊

目录 需求 方案分析 相关库引入 关键代码 Word 转 Pdf Pdf 转批量 Jpeg Jpeg 转为电子书 实现效果演示 小结 需求 曾经的一个项目&#xff0c;要求实现制作电子期刊定期发送给企业进行阅读&#xff0c;基本的需求如下&#xff1a; 1、由编辑人员使用 Microsoft Word…

Java 栈和队列的交互实现

文章目录 队列和栈的区别一.用队列模拟实现栈1.1入栈1.2出栈1.3返回栈顶元素1.4判断栈是否为空 二.用栈模拟实现队列2.1 入队2.2出队2.3peek2.4判断队列是否为空 三.完整代码3.1 队列模拟实现栈3.2栈模拟实现队列 队列和栈的区别 栈和队列都是常用的数据结构&#xff0c;它们的…

Swift 周报 第四十期

文章目录 前言新闻和社区53.5亿美元&#xff01;传苹果今明两年或将采购 2.3 万台 AI 服务器&#xff01;TestFlight 让管理测试员变得更加简单推送通知控制面板现已推出新交付指标Apple Vision Pro 开发者实验室现已扩展到纽约市和悉尼 提案正在审查的提案 Swift论坛推荐博文话…