JavaScript基础(四)

news2024/11/20 20:34:26

逻辑运算符

&&  与 : 多个条件同时满足

ΙΙ     或 : 多个条件满足一个

!    非 : 否定某个条件

例:

<script>
   //&多个条件同时满足,才返回true
   //任意一个为false,就返回false
   var a =10;
   var b =20;
   var bool =(a>5)&(b>10);
   console.log(bool);
</script>

01e2d891d4a842dfae520bb530af4bc7.png

结果咋是1?//逻辑运算符中0代表false,非零代表true

那就想看true和false怎么办!这么整:

   console.log(Boolean(bool));

e1f4d50dbcf54a5aaeef44fd723d2ea6.png

如果使用&&就不用转

<script>

   //任意一个为false,就返回false

   var a =10;

   var b =20;

   var bool =(a>5)&&(b>20);

   console.log(bool);

</script>

4ffa5a509bfb48129ef8dd41c6f69880.png

也可以并排多个条件

   var bool =(a>5)&(b>5)&(a>b);

//Ι 或,多个条件只要有任意一个结果返回true,就是true。

//ΙΙ短路或,只要一个满足后面的就不再进行,和java一样,效率更高,

//&&短路与也一样,只要一个不满足后面就不再进行。

这些就不再演示了

//取反

<script>

   var a =10;

   var b =20;

   var bool =a>b;

   console.log(bool);

</script>

a1e4ad8df79e4bffbbab3bed9a07bf87.png

结果原本是false

  var bool =!(a>b); 取反就变成了true:

ca4a4f6343a9401baedbac38742ed79f.png

 选择结构之if else

根据销售出的房子多少发奖金

<script>

   var house =5;

   if(true){

    alert('奖金5000')

   }

</script>

52e4f404f1c94584aca3d0a51d52fcbc.png

 好,由此我们得知,if后条件为true就会执行后面的条件语句。

当我们根据上面的例子多重判断时一个一个写if太麻烦,就用if else:

<script>

   var house =5;

   if(house>10){

    alert('奖金10000')

   }else{

    alert('奖金5000')

   }

</script>

a61f85c2150b471d90d2c6f889c7ad32.png

也可以在else后在接if判断:

<script>

   var house =6;

   if(house>10){

    alert('奖金10000')

   }else if (house>8){

    alert('奖金8000')

   }else if (house>5){

    alert('奖金6000')

   }else{

    alert('奖金5000')

   }

</script>

ebe56245406c468ea65be19f0a0098c6.png

 这是从上到下进行的,只要有一个满足就不会再继续进行。

if else之间也可以嵌套,就像上面我们写的就能套起来:

<script>

   var house =-2;

   if (house<0){

    alert('你的努力我都看在眼里,就扣你1000工资吧')

   }else {

    if(house>10){

    alert('奖金10000')

   }else if (house>8){

    alert('奖金8000')

   }else if (house>5){

    alert('奖金6000')

   }else{

    alert('奖金5000')

   }

   }

</script>

83be5360ded64e4eaa13250b950be4bc.png

JS变量命名法则

1.驼峰命名法

第一个单词的首字母小写剩下单词的首字母大写

2.不能用关键字开头

3.你的变量名要有意义,后面维护的时候要见名知意,不然你自己一看一堆aabbcc自己也啥不知道。

4.不能用数字开头

你要是说我英语不好,不想学英语,拼音可以用,第一个小写后面开头大写,一样的。

选择结构之switch case

等值判断时用ifelse太麻烦,用switch更方便,比如让你输今天周几:

<script>

   var day = prompt ('请输入今天周几(1-7)');

   switch (day){

    case '1':alert('真不错,好好工作');

    break;

    case '2':alert('不错,好好工作');

    break;

    case '3':alert('好好工作');

    break;

    case '4':alert('好工作');

    break;

    case '5':alert('工作');

    break;

    case '6':alert('真不错');

    break;

    case '7':alert('不');

    break;

   }

</script>

4f3d62c7630841f8b6682146b058cc4f.png

ba482a6c4e4b40e28eae43fa64807c24.png 

 是不是比if方便多了,

switch(比较的对象){case'值':执行代码}

break;

如果不用break跳出,后面代码会全部执行一遍,这叫"case击穿"

其实也可以利用case击穿:

<script>

   var day = prompt ('请输入今天是第几个工作日(1-5)');

   switch (day){

    case '1':

    case '2':

    case '3':

    case '4':

    case '5':alert('今天是第'+day+'个工作日,请好好工作');

   }

</script>

08195380505c450dae97b8854b13b363.png

1d88f32fe6a34a8d8c3bef11b1a525f1.png 

 这用于等值要进行相同操作时。

 

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

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

相关文章

【linux】重定向

重定向 什么是重定向如何实现一个简单的重定向关于重定向的系统调用接口 注意&#xff1a;在看这篇博客之前&#xff0c;最好是要对文件在系统中是如何被打开的以及操作系统是如何管理文件有一个初步了解&#xff0c;如果不了解的话&#xff0c;可以看看这篇博客《初步认识文件…

stm32之hal库spi驱动封装(实现阻塞,中断,dma三种方式)

前言 配置功能参考rt-thread驱动代码将中断配置和dma配置单独分开管理 代码 中断管理 头文件 /** Copyright (c) 2024-2024,shchl** SPDX-License-Identifier: Apache-2.0** Change Logs:* Date Author Notes* 2024-5-3 shchl first version*/#ifnd…

【AIGC】本地部署 ollama + open-webui

在之前的篇章《【AIGC】本地部署 ollama(gguf) 与项目整合》中我们已经使用 ollama 部署了一个基于预量化&#xff08;gguf&#xff09;的 Qwen1.5 模型&#xff0c;这个模型除了提供研发使用外&#xff0c;我还想提供给公司内部使用&#xff0c;因此还需要一个 ui 交互界面。 …

2003-2022年各省对外直接投资存量/省对外直接投资流量/省OFDI流量/省OFDI存量数据

2003-2022年各省对外直接投资存量、省对外直接投资流量、省OFDI流量、省OFDI存量数据 1、时间&#xff1a;2003-2022年 2、来源&#xff1a;对外直接投资公报 3、范围&#xff1a;31省 4、指标&#xff1a;省对外直接投资流量/OFDI流量、省对外直接投资存量/OFDI存量 5、指…

OpenCV(三)—— 车牌筛选

本篇文章要介绍如何对从候选车牌中选出最终进行字符识别的车牌。 无论是通过 Sobel 还是 HSV 计算出的候选车牌都可能不止一个&#xff0c;需要对它们进行评分&#xff0c;选出最终要进行识别的车牌。这个过程中会用到两个理论知识&#xff1a;支持向量机和 HOG 特征。 1、支…

爬虫自动化之drissionpage实现随时切换代理ip

目录 一、视频二、dp首次启动设置代理三、dp利用插件随时切换代理一、视频 视频直接点击学习SwitchyOmega插件使用其它二、dp首次启动设置代理 from DrissionPage import ChromiumPage, ChromiumOptions from loguru

MySQL与金蝶云星空对接集成执行查询语句-v2打通销售退货新增V1

MySQL与金蝶云星空对接集成执行查询语句-v2打通销售退货新增V1 数据源系统:MySQL mysql是一个关系数据库管理系统&#xff08;RDBMS&#xff09;&#xff0c;所谓的关系型数据库&#xff0c;是建立在关系模型基础上的数据库&#xff0c;借助于集合代数等数学概念和方法来处理数…

深度解析 Spring 源码:探寻Bean的生命周期

文章目录 一、 Bean生命周期概述二、Bean生命周期流程图三、Bean生命周期验证3.1 代码案例3.2 执行结果 四、Bean生命周期源码4.1 setBeanName()4.2 setBeanFactory()4.3 setApplicationContext()4.4 postProcessBeforeInitialization()4.5 afterPropertiesSet()4.6 postProces…

npm安装依赖报错解决办法

项目场景&#xff1a; 安装gitee上的开源vue3TS项目&#xff0c;npm安装依赖报错 问题描述 克隆项目到VSCode之后&#xff0c;使用npm install安装依赖&#xff0c;报错 npm install npm ERR! code ENOENT npm ERR! syscall open npm ERR! path Y:\WebStudyBlog\MovieWeb/p…

【Linux】学习笔记

文章目录 [toc]第一章&#xff1a;基础篇01|课程介绍02|内容综述03|什么是Linux04|Linux的内核版本及常见发行版内核版本发行版本Red Hat Enterprise LinuxFedoraCentOSDebianUbuntu 05|安装VirtualBox虚拟机VirtualBox下载url 06|在虚拟机中安装Linux系统Linux安装镜像下载 07…

基于OpenCv的图像傅里叶变换

⚠申明&#xff1a; 未经许可&#xff0c;禁止以任何形式转载&#xff0c;若要引用&#xff0c;请标注链接地址。 全文共计3077字&#xff0c;阅读大概需要3分钟 &#x1f308;更多学习内容&#xff0c; 欢迎&#x1f44f;关注&#x1f440;【文末】我的个人微信公众号&#xf…

【C++并发编程】(四)条件变量

文章目录 &#xff08;四&#xff09;条件变量 &#xff08;四&#xff09;条件变量 条件变量&#xff08;Condition Variable&#xff09;用于线程间的同步&#xff0c;允许一个或多个线程在特定条件不满足时等待&#xff0c;并在条件满足时被其他线程唤醒。C标准库中提供了的…

D3CTF2024

文章目录 前言notewrite_flag_where【复现】D3BabyEscapePwnShell 前言 本次比赛笔者就做出两道简单题&#xff0c;但队里师傅太快了&#xff0c;所以也没我啥事。然后 WebPwn 那题命令行通了&#xff0c;但是浏览器不会调试&#xff0c;然后就简单记录一下。 note 只开了 N…

【热门话题】如何构建具有高度扩展性的系统

&#x1f308;个人主页: 鑫宝Code &#x1f525;热门专栏: 闲话杂谈&#xff5c; 炫酷HTML | JavaScript基础 ​&#x1f4ab;个人格言: "如无必要&#xff0c;勿增实体" 文章目录 如何构建具有高度扩展性的系统引言一、理解扩展性1.1 扩展性的定义1.2 扩展性的…

3GPP官网下载协议步骤

1.打开官网 https://www.3gpp.org/ 2.点击 3.在界面选择要找的series&#xff0c;跳转到查找界面 以V2X通信协议为例&#xff0c;论文中通常会看到许多应用&#xff1a; [7] “Study on evaluation methodology of new Vehicle-to-Everything (V2X) use cases for LTE and NR…

2-手工sql注入(进阶篇) sqlilabs靶场1-4题

1. 阅读&#xff0c;学习本章前&#xff0c;可以先去看看基础篇&#xff1a;1-手工sql注入(基础篇)-CSDN博客 2. 本章通过对sqlilabs靶场的实战&#xff0c;关于sqlilabs靶场的搭建&#xff1a;Linux搭建靶场-CSDN博客 3. 本章会使用到sqlmap&#xff0c;关于sqlmap的命令&…

C 深入指针(2)

目录 1 野指针 1.1 成因 1.2 如何规避野指针 2 assert 断言 2.1 用法 2.2 assert 的优点 2.1 assert 的缺点 3 小注解 3.1 Debug 和 Release 1 野指针 【概念】&#xff1a; 野指针就是指针指向的位置是不可知的&#xff08;随机的、不正确的、没有明确限制的&#…

解决windows下无法安装Hyper-V

在windows中打开hyper-v的办法如下&#xff1a;&#xff08;但不适用无法安装hyper-v的windows系统如win10家庭版&#xff09; 通过「控制面板」是启用 Hyper-V 最直接的方法&#xff1a; 1 使用Windows R快捷键打开「运行」对话框&#xff0c;执行appwiz.cpl以打开「控制面…

关于win平台c语言引入开源库的问题与解决

许久不写博客&#xff0c;五一还在加班&#xff0c;就浅浅写一篇吧 最近除了做物联网平台 还对网关二次开发程序做了修改&#xff0c;网关的二次开发去年年底的时候做过&#xff0c;但是当时的逻辑不是十分完善&#xff0c;差不多已经过了半年了&#xff0c;很多细节已经忘记了…

Java--方法的使用

1.1什么是方法 方法顾名思义就是解决问题的办法&#xff0c;在程序员写代码的时候&#xff0c;会遇到很多逻辑结构一样&#xff0c;解决相同问题时&#xff0c;每次都写一样的代码&#xff0c;这会使代码看起来比较绒余&#xff0c;代码量也比较多&#xff0c;为了解决这个问题…