// if(){}else if(){}...else{}
        // 多种条件,多种情况下的判断语句
        // 必须要注意
        // 1,else if 之后有() 可以写判断条件
        // 2,else 之后,是不能有(),不能写条件
        // 3,else if 之间必须有空格
        // 4,else 其中执行的程序,往往是容错处理
        // 执行过程和执行原理
        // 从第一个条件(if小括号中的条件)开始判断
        // 如果是true,就执行{}中对应的程序内容
        // 如果是false,就是执行下一个else if,()中的条件
        //      如果是true,就是执行{}中对应的程序内容
        //      如果是false,就是执行下一个else if,()中的条件
        //          如果是true,就是执行{}中对应的程序内容
        //          如果是false,就是执行下一个else if,()中的条件
        // 如果所有()中的条件都不满足,就执行else中的程序内容
        // true有执行,false没有执行     if(){}语句
        // true有执行,false有其他执行   if(){}else{}
        // 多种情况,多种执行            if(){}else if(){}....else{}
        // 根据成绩分数,输出不同的考试结果成绩
        // 100分    最强王者
        // 90-99    星耀
        // 80-89    钻石
        // 70-79    铂金
        // 60-69    黄金
        // 60分一下  黑铁
        // 1-100的随机数
        var num = parseInt(Math.random() * (100 + 1 - 1) + 1);
        // 当前情况,是可以不写 <= 条件的
        // 根本原因就是 我们的数值范围 只是 1 - 100 
        // 数值范围是 1 - 100 最大值是 100
        // 如果是 100 会满足第一个条件,执行 第一个{}中的程序,之后的程序不会执行
        if (num == 100) {   
            console.log(`您的成绩是${num}分,喜提 最强王者 称号`);
        
        // 如果不是 100 也就是第一个条件是false,会执行第二个()中的条件判断
        // 此时我们的数值范围一定是 1-99 的范围 
        // 本身随机数的最大值就是 1-100 如果是 100 满足第一个条件
        // 执行第二个判断,一定不满足第一个,一定不是100,因此范围一定是 1 - 99
        } else if (num >= 90) {
            console.log(`您的成绩是${num}分,喜提 星耀 称号`);
        
        // 如果执行第三个判断 , 一定是前两个条件都不满足
        // 不是 100 也不是 >= 90 的数值 , 也就是 1-89的数值
        // 可以执行第三个条件判断,意味着本身的范围就是 1-89 不会超过89
        } else if (num >= 80) {
            console.log(`您的成绩是${num}分,喜提 钻石 称号`);
        } else if (num >= 70 ) {
            console.log(`您的成绩是${num}分,喜提 铂金 称号`);
        } else if (num >= 60 ) {
            console.log(`您的成绩是${num}分,喜提 黄金 称号`);
        } else {
            console.log(`您的成绩是${num}分,您还玩什么劲儿啊`);
        }
        // 实际项目中 , else 往往做容错处理
        // 例如 实际成绩应该是 0-100分
        // 现在有输入错误的情况 例如 超过 100 分 或者小于0分
        // 随机数的范围是 -20 至 120
        var num2 = parseInt(Math.random() * (120 + 1 - (-20)) + (-20));
        console.log(num2);
        // 数值范围是 -20 - 120 有可能超过正常值范围
    
        // 条件1,判断是等于 100
        if (num2 == 100) {
            console.log(`您的成绩是${num2}分,喜提 最强王者 称号`);
        // 执行到判断条件2,说明,数值不是100
        // 范围是 -20 - 120 但是不包括 100  
        // 如果不写 <= 条件 例如超过100的数值,也会满足这个条件
        // 就会造成程序执行错误
        } else if (num2 >= 90 && num2 <= 99) {
            console.log(`您的成绩是${num2}分,喜提 星耀 称号`);
        } else if (num2 >= 80 && num2 <= 89) {
            console.log(`您的成绩是${num2}分,喜提 钻石 称号`);
        } else if (num2 >= 70 && num2 <= 79) {
            console.log(`您的成绩是${num2}分,喜提 铂金 称号`);
        } else if (num2 >= 60 && num2 <= 69) {
            console.log(`您的成绩是${num2}分,喜提 黄金 称号`);
        } else if ( num2 >= 0 && num2 < 60 ) {
            console.log(`您的成绩是${num2}分,您还玩什么劲儿啊`);
        } else {
            console.log(`您的成绩是${num2}分,您是不是输入数据错误,玩我呢`);
        }  
        
        
        
        // 如果有 正确的 数值范围
        // 有时 <= 的判断条件 或者 >= 的判断条件,有时是可以省略的
        // 因为 1,数值范围正确   2,有之前的判断条件,约束
        // 如果数值范围有 错误数据内容
        // 只限制 >=  或者 <=  有可能造成判断错误
        // 不能正确的判断错误数据内容
        // 写上 >= && <= 一定不会错
        // 如果 只写 >= 或者 只

随机推荐

  1. 使用纯c#在本地部署多模态模型,让本地模型也可以理解图像

    之前曾经分享过纯c#运行开源本地大模型Mixtral-8x7B 当时使用的是llamasharp这个库和Mixtral的模型在本地部署和推理,前段时间我看到llamasharp更新到了0.11.1版本 ...

  2. easyx的使用

    本操作集根据B站学习,借鉴: 视频链接:[C/C++/EasyX]学编程,做游戏,小白快速入门图形编程,零基础入门到精通,学习就是这么快乐_哔哩哔哩_bilibili 初始化时要进行的操作: 记得调用 ...

  3. BURP保存多个监听器配置

    "感谢您阅读本篇博客!如果您觉得本文对您有所帮助或启发,请不吝点赞和分享给更多的朋友.您的支持是我持续创作的动力,也欢迎留言交流,让我们一起探讨技术,共同成长!谢谢!" 前言 在进 ...

  4. 力扣49(java)-字母异位词分组(中等)

    题目: 给你一个字符串数组,请你将 字母异位词 组合在一起.可以按任意顺序返回结果列表. 字母异位词 是由重新排列源单词的字母得到的一个新单词,所有源单词中的字母通常恰好只用一次. 示例 1: 输入: ...

  5. 我,PolarDB云原生数据库,5年来实现这些重磅技术创新

    简介: 过去5年,阿里云针对PolarDB进行了诸多创新,通过采用存储计算分离.软硬一体化设计,PolarDB实现成本仅为传统商业数据库的十分之一.所实现的计算.内存与存储资源的"三层解耦& ...

  6. Arthas 使用的各类方式

    简介: Arthas 是阿里巴巴开源的 Java 诊断工具.让我们能够在线排查项目发生的问题.除了知道它的存在之外,我们也需要知道我们如何去安装使用它,以便于提高我们日常开发解决 BUG 的效率. A ...

  7. 开课啦 dubbo-go 微服务升级实战

    简介: 杭州开课啦教育科技有限公司是一家致力于为中小学生提供学习辅导的在线教育公司,目前公司后端服务基础设施主要依托于阿里云原生,其中包含计算.网络.存储以及 Kubernetes 服务. 技术选型背 ...

  8. [FE] Js DOM 操作的几个常见错误

    1.setTimeout 匿名函数传参问题,匿名函数形参是不能直接在内部使用的,匿名函数传参需要按顺序从 setTimeout 的第三个参数开始依次传递. 2. Js clone出来的 dom 节点, ...

  9. js实现打字机效果(完整实例)

    在上篇css高斯模糊的效果基础上用js实现一个打字机效果: 上图: 代码: <!DOCTYPE HTML> <html lang="en-US"> < ...

  10. ssh端口转发实际应用

    目录 1 ssh本地端口转发 2 ssh远程端口转发 3 跨网络访问(网关功能) 4 动态端口转发(KX上网) SSH 会自动加密和解密所有 SSH 客户端与服务端之间的网络数据.而且,SSH 还能够 ...