JS中的逻辑与和逻辑或

article/2025/8/22 21:25:12

JS中的逻辑或||符号:

从字面上来说,只有前后都是 false 的时候才返回 false,否则返回 true。

   console.log(5 > 6|| 6 > 5) //返回true

5>6为false 但是 6>5为true 所以返回 true
总结:一真为真
特殊运算方法:

  • 只要“||”前面为false,不管“||”后面是true还是false,都返回“||”后面的值。
   console.log(false || 4) //返回4console.log(false || 0) //返回0
  • 只要“||”前面为true,不管“||”后面是true还是false,都返回“||”前面的值。
   console.log(true || 4) //返回trueconsole.log(true || 0) //返回true

总结:返回值真前假后
可以利用该方法实现判断赋值;

	let a = (5 < 0) || '9'console.log(a);//5>0 为false 返回9 并赋值给了a 

JS中的逻辑与&&符号:

从字面上来说,只有前后都是 true 的时候才返回 true,否则返回 false。

   console.log(5 > 6|| 6 > 5) //返回false

5>6为false 6>5为true 返回false
总结:一假为假

特殊运算方法

  • 只要“&&”前面是false,无论“&&”后面是true还是false,结果都将返“&&”前面的值;
   console.log(false && 0) //返回falseconsole.log(false && 4) //返回false
  • 只要“&&”前面是true,无论“&&”后面是true还是false,结果都将返“&&”后面的值;
   console.log(true && 0) //返回0console.log(true && 4) //返回4

总结:返回值假前真后

和逻辑或一样,可以利用该方法实现判断赋值;

	let a = (5 > 0) && '9'console.log(a);//9//5>0 为true 返回9 并赋值给了a 

在js逻辑运算中,0、” “、null、false、undefined、NaN都会判为false,其他都为true。

在使用 ||&& 时要注意下短路规则:

短路原则

在逻辑运算中,这是一个通用的原则,这是由于表达式从左到右执行的特性,为了减少运算量而给运算器规定的操作。主要针对 &&|| 两种运算。

  • && 的判断是同真为真,一假为假,则运算如果左边的表达式值为 false,那么就不会再执行右边的表达式了,如果左表达式为 true 就会继续执行右表达式;
    例如:
    左边为false
	let a = 9>10 && c > b;console.log(a)

上边的代码我们没有正常情况下未定位是会报错的但是这里没有报错同时返回了 false;
在这里插入图片描述
由此验证了上面的左边的表达式值为 false,那么右边的就不会执行了,即便有未定的都不会报错是因为根本就没有执行。
左右为true

	let a = 9<10 && c > b;console.log(a)

和左边为false不同 报错了
在这里插入图片描述
其原因是左边的为true那么右边的会继续执行

  • || 的判断是一真为真,同假为假,则运算如果坐表达式值为 true,那么就不用执行右边的表达式了,如果左表达式为 false 就会继续执行右表达式;

http://chatgpt.dhexx.cn/article/5cdPJJGS.shtml

相关文章

逻辑或( || )和逻辑与( )的关系

逻辑或&#xff0c;符号为“||”&#xff0c;只有操作数都是假&#xff0c;结果才是假。&#xff08;全假才为假&#xff09; 逻辑与&#xff0c;符号为“&&”&#xff0c;只有操作数都是真&#xff0c;结果才是真。&#xff08;全真才为真&#xff09; 如下图&#xf…

计算机逻辑与 或 非的表达式,计算机算数和,逻辑与,逻辑或,逻辑非分别是什么意思...

蔷祀的回答: 1、算术和:算术和就是所有的加数都是非负的(整数或0)得到的和。 2、逻辑与:逻辑与即1101 & 0100,就是按位相与,与的概念可以同俗的理解为,一个电路有两个串联的开关,只有同时关闭两个开关电路才通,打开任意一个开关电路都不通,所以那两个数逻辑与的结…

逻辑与(),逻辑或(||),and(),or(|)

一、背景、 这四个逻辑运算符&#xff0c;大家都知道&#xff0c;但是有时候会凌乱&#xff0c;再者就是我自己想写一点基础的东西&#xff0c;巩固一下自己&#xff0c;也算是一种笔记&#xff0c;不但自己会了&#xff0c;还可以分享给大家一起学习。 二、目的、 巩固自己…

逻辑同或,逻辑异或,逻辑与,逻辑或

一、逻辑异或 真⊕假真 假⊕真真 假⊕假假 真⊕真假 或者为&#xff1a; True ⊕ False True False ⊕ True True False ⊕ False False True ⊕ True False 二、逻辑同或 相同为一&#xff0c;不同为零。 三、逻辑与 1.逻辑与&& 表示逻辑与的意思&#xff0…

按位或与逻辑或的区别

按位或&#xff08;|&#xff09;和逻辑或&#xff08;||&#xff09;的区别&#xff1a;逻辑或&#xff1a;逻辑或是三种逻辑运算符之一。 逻辑或相当于生活中的或者&#xff0c;当两个条件中有任一个条件满足&#xff0c;逻辑或的运算结果就为真。按位或&#xff1a;按位或运…

Axure8.0 注册码

我的Axure升级到8.1.0.3382&#xff0c;使用最后一个可用的&#xff01; 其他版本的小伙伴&#xff0c;请自行试验吧~ 升级了8.1.0.3377版本后&#xff0c;需要使用下面这组注册码 license&#xff1a;zdfans.com key&#xff1a;gP5uuK2gH iIVO3YFZwoKyxAdHpXRGNnZWN8Obn…

Axure下载安装-汉化-注册码

安装版本&#xff1a;8.1.0 一、下载、安装 链接&#xff1a;https://pan.baidu.com/s/1GbQKSn2aWnFOAkPsLITWQA 密码&#xff1a;qcf6 安装最后一步&#xff0c;不要点Run xxx 二、汉化 下载一个01053230.zip的压缩包&#xff0c;解压后把lang文件夹放到Axure的安装目录下…

RFID-RC522/STM32F103RB/KEIL5 简单实现读取卡片ID

文章目录 序章简单使用核心源码工程下载 序章 在这篇文章【 https://blog.csdn.net/qq_28877125/article/details/80437095 】的基础上修改完成&#xff01; 简单使用 1).环境配置 MCU芯片型号&#xff1a;STM32F103RB开发板&#xff1a;理论任何STM32开发板KIDE&#xff1…

STM32CubeMX(13)——SPI时序读写RFID-RC522

SPI时序读写RFID-RC522 目录 STM32 Cubemax(十三) ——SPI时序读写RFID-RC522 前言 一、SPI时序通信 二、模块接线 三.Cubemax配置 四.核心代码 延时函数 写RC522寄存器 读RC522寄存器 复位RC522 使用代码 1.复位 2.寻卡并得到其序列号 总结 前言 用RFID来学习一…

基于STM32+RC522设计的门禁系统

一、项目背景 门禁系统是现代社会中非常重要的安全控制系统之一,其功能是在保障建筑物安全的同时,为合法用户提供便利。当前设计一种基于STM32+RC522的门禁系统设计方案,通过RFID-RC522模块实现了对用户卡的注册、识别及身份验证,通过控制SG90舵机实现门锁的开关,具有较高…

硬件速攻-RC522射频模块

介绍 RC522是一种射频识别&#xff08;RFID&#xff09;模块&#xff0c;用于读取和写入基于ISO/IEC 14443 A/MIFARE协议的13.56MHz RFID标签。该模块可以通过SPI接口与微控制器进行通信&#xff0c;并支持多达25个字节的数据传输。 RC522模块包括一个天线、收发器、调制解调…

基础篇010.3 STM32驱动RC522 RFID模块之三:STM32软件模拟SPI驱动RC522

目录 1. 实验硬件及原理图 2. 利用STM32CubeMX创建MDK工程 2.1 STM32CubeMX工程创建 2.2 配置调试方式 2.3 配置时钟电路 2.4 配置时钟 2.5 配置GPIO 2.6 配置串口 2.7 项目配置 3. MDK工程驱动代码调试 3.1 按键、LED程序 3.2 SPI软件模拟程序 3.3 RC522驱动程序…

[STM32] Stm32f103c8t6+RC522 实现读卡写卡功能(超详细,零基础,小白)

本篇文章内容总结下来就是 读卡 使用默认密码读卡所有扇区所有块的数据写ID 使用默认密码读取卡一的0扇区的第一块数据并写入到卡二的0扇区的第一块里密码读卡 不同厂家的初始密码不同,整理了一些默认密码,如果有收集到新的也可以补充进去写全卡 …

STM32/51单片机实训day4——RFID数据读取|RC522|串口数据收发、可模拟RFID (三) 仿真

目录 1 任务指导 2 实验步骤 3 串口调试 4 USART配置 5 fputs函数重写 内 容&#xff1a;能够读取RFID卡S50的ID——编程实现串口数据收发 学 时&#xff1a;3学时 知识点&#xff1a;电路图设计、USART配置 重点&#xff1a; USART配置 难点&#xff1a;USART配置 时间…

Arduino文档阅读笔记-RFID工作原理及RC522模块介绍

RFID工作原理 RFID&#xff08;Radio Frequency Identification&#xff09;&#xff1a;无线射频识别 RFID由2个部分组成&#xff1a;应答器/标签被贴在某个物体上的东东。无线接收器用于读取应答器/标签上的数据。 读卡器由频射模块及高平磁场组成。Tag/应答器为待感应设备…

Arduino教程 RFID-RC522读IC卡门禁原理及破解防御

【文章特色&#xff1a;1、提出IC卡破解原理和简单有效的防御方法2、网上其他文章对于硬件如何接线说得模糊不清】 1、序言 先说下简单门禁系统的原理&#xff1a; (1)IC卡激活&#xff1a;门禁卡管理员将卡片放到读卡器、这时软件读取到IC卡的UID序列号信息(相当于身份证号…

51单片机驱动RC522模块

最近在某宝上买了一块RC522模块&#xff0c;试玩了下&#xff0c;读写卡正常。想学习使用新的东西时&#xff0c;有必要了解它的工作原理和工作过程&#xff0c;不清楚或者不知道的可以参考相关数据手册和参考文献&#xff0c;在这里为了节省自己的时间&#xff0c;我只对我的5…

基础篇010.1 STM32驱动RC522 RFID模块之一:基础知识

目录 1. RFID概述 1.1 RFID工作原理 1.2 RFID分类 1.3 RFID模块 1.4 RFID卡片 1.5 IC卡和ID卡介绍 1.6 IC卡和ID的区分 2. Mifare卡结构原理 2.1 Mifare卡概述 2.2 Mifare非接触式 IC 卡性能简介&#xff08;M1&#xff09; 2.2.1 Mifare S50与Mifare S70 2.2.2 S5…

RC522

该文为摘抄其他文章内容&#xff0c;主要为RC500书籍.pdf. 1. 通讯标准 1.1 RFID卡标准&#xff1a; 1.2 ISO/IEC 14443通讯标准&#xff1a; 2. 读写器 3. 卡 3.1 mifare 1卡 3.1.1 Mifare 1硬件结构&#xff1a; ① 射频接口&#xff1a;在 RF 射频接口电路中&#xff0c;包…

arduino rc522模块使用

rfid IC卡 先了解IC卡一些前置知识。 首先我们会有一张ic卡&#xff08;M1类型IC卡&#xff0c;一般买到的都是1K存储空间&#xff09;&#xff0c;在rc522代码中会出现这个&#xff0c;就是对IC卡进行检查PICC_TYPE_MIFARE_4K和PICC_TYPE_MIFARE_1K就是一种卡片类型不同大小…