当前位置:首页 > 上门服务 >

and表示什么概念(and的正确形式是什么)

来源:原点资讯(www.yd166.com)时间:2023-10-31 07:46:03作者:YD166手机阅读>>

AND&&和 OR||是 javaScript 中的逻辑运算符,可用于执行不同的逻辑表达式。在这篇文章中,我将解释它们之间的区别。

本文的目标是让您了解这些运算符的工作原理以及它们的不同之处。

要理解这些运算符,了解JavaScript 中真值和假值的概念非常重要。

(更|多优质内|容:java567 点 c0m)

真实值和虚假值

在 JavaScript 中,许多值可以用它们的布尔值来表示。由 表示的值false是假值,由 表示的值true是真值。让我们看一些例子:

0 false undefined null "" // empty string

值0、false、undefined、null和空字符串""是假值,因为它们的布尔表示是false。

至于真值,任何不是真值的值falsy都是truthy。这意味着真值包括true, 1, [3. 4], {}, "hello"。

现在我们已经解决了这个问题,让我们看看它们如何与ANDandOR运算符联系起来。

如果您对此感兴趣,我有该主题的视频版本。

AND操作员

逻辑AND运算符用在表达式中的两个操作数之间,如下所示:

operand1 && operand2

如果第一个操作数是真值,则该运算符返回第二个操作数。如果第一个操作数是假值,则运算符将返回第一个操作数。正如我们所见,真值是计算结果为 的值true。

让我们看一个例子:

const exp1 = 5 const exp2 = "Dillion" const result = exp1 && exp2 console.log(result) // "Dillion"

在此示例中,我们的exp1值为5和exp2值为"Dillion"。然后我们有一个result变量,它保存使用和&&之间的运算符返回的值。exp1``exp2

这里发生的是,运算符从左侧开始检查是否exp1为真值。5是真值,因此运算符返回右侧的值。这就是为什么“Dillion”result具有价值。

AND让我们看另一个多次使用运算符的示例:

function returnFalsy() { return "" } const exp1 = [1, 2] const exp2 = returnFalsy() const exp3 = { name: "Dillion" } const result = exp1 && exp2 && exp3 console.log(result) // ""

正如我们在这个例子中看到的,我们有:

  • exp1用一个数组
  • exp1与调用的返回值returnFalsy()(这是一个空字符串 - 一个虚假值)
  • exp3与一个物体

最后,我们有一个result变量,它保存使用and&&之间的运算符和and之间的运算符返回的值。exp1exp2exp2``exp3

我们这里有exp1 && exp2操作数 1 和操作数 2。然后这个表达式的结果将成为下一个表达式的操作数 1:result && exp3。exp3这是第二个表达式中的第二个操作数。

这里发生的是,运算符从左侧开始检查是否exp1为真值。exp2在本例中,我们有一个数组,它是一个真值,这意味着将返回第二个操作数。exp2成为第一个操作数,并exp3成为第二个表达式的第二个操作数。

第二个&&运算符检查是否exp2为真值。在这种情况下,空字符串“”是一个假值,因此运算符返回exp2。它不需要检查,exp3因为错误的事实exp2意味着操作员将停止从左到右的检查。

这里发生的是短路,您可以在我关于短路运算符的文章中了解更多信息

OR操作员

逻辑OR运算符用在表达式中的两个操作数之间,如下所示:

operand1 || operand2

如果第一个操作数是真值,则运算符返回第一个操作数。如果第一个操作数是假值,则运算符将返回第二个操作数。

让我们看一个例子:

const exp1 = 5 const exp2 = "Dillion" const result = exp1 || exp2 console.log(result) // 5

在此示例中,我们的exp1值为5和exp2值为"Dillion"。然后我们有一个result变量,它保存使用和||之间的运算符返回的值。exp1``exp2

这里发生的是,运算符从左侧开始检查是否exp1为真值。5是一个真值,因此运算符返回它。这就是为什么result值为5的原因。

操作OR员不会费心去检查,exp2因为它已经找到了一个真实值。这与运算符相反AND。AND继续从左向右,只要true。但OR会停止(再次,一旦看到true- 它只会继续从左到右,只要false

OR让我们看另一个多次使用运算符的示例:

function returnFalsy() { return "" } const exp1 = null const exp2 = returnFalsy() const exp3 = { name: "Dillion" } const result = exp1 || exp2 || exp3 console.log(result) // { name: "Dillion" }

正如我们在这个例子中看到的,我们有:

  • exp1值为null(假值)
  • exp1与调用的返回值returnFalsy()(这是一个空字符串 - 一个虚假值)
  • exp3与一个物体

最后,我们有一个result变量,它保存使用and||之间的运算符和and之间的运算符返回的值。exp1exp2exp2``exp3

我们这里有exp1 || exp2操作数 1 和操作数 2。然后这个表达式的结果将成为下一个表达式的操作数 1:result || exp3。exp3这是第二个表达式中的第二个操作数。

这里发生的是,运算符从左侧开始检查是否exp1为真值。在本例中,我们有,它是一个假值,这意味着将返回null第二个操作数。成为第一个操作数,并成为第二个表达式的第二个操作数。exp2exp2exp3

第二个||运算符检查是否exp2为真值。在这种情况下,空字符串“”是一个假值,因此运算符返回exp3。正如您在这里所注意到的,OR只要遇到错误值,运算符就会继续运行。它只会在找到真值或到达表达式末尾时停止。

使用ANDand ORinif语句

if语句允许您创建条件语句,您可以在其中确定根据条件执行的内容。

AND让我们看一个在语句中使用的示例if:

const isLoggedIn = true const cart = [] if (isLoggedIn && cart.length) { console.log("Cart not empty") } else { console.log("Cart is empty") }

你能猜出执行这段代码的结果吗?结果是:

// Cart is empty

原因如下。if该语句的条件是isLoggedIn && cart.length。左操作数的isLoggedIn计算结果为true。请记住,&&如果左操作数为 ,则运算符返回右操作数true。如果左操作数为 ,则仅返回左操作数false。在这种情况下,该运算符将返回cart.length,其计算结果为 0,因为cart数组为空。

这意味着该if块被执行为if(0).

该if语句将强制0为布尔值。正如我们之前看到的,0是一个假值。因此if,看到条件表达式0为的语句false将执行else块:console.log("Cart is empty")。您可以在本文中了解有关类型强制的更多信息。

假设OR被使用:

const isLoggedIn = true const cart = [] if (isLoggedIn || cart.length) { console.log("Cart not empty") } else { console.log("Cart is empty") }

你能猜到这个结果吗?这里是:

// Cart not empty

原因如下。if这里语句的条件是isLoggedIn || cart.length。左操作数的isLoggedIn计算结果为true。请记住,||如果左操作数为 ,则该运算符将返回该操作数true。如果左操作数为 ,则仅返回右操作数false。在这种情况下,运算符将返回isLoggedIn其计算结果为true。

这意味着该if块被执行为if(true).

在这种情况下,不会发生强制转换,因为它true已经是一个布尔值。因此if,看到条件表达式true为的语句true将执行if块:console.log("Cart not empty")。

包起来

AND以下是和之间的区别摘要OR:

  • AND如果左表达式是,则返回右表达式true
  • AND如果左表达式是,则返回左表达式false
  • OR如果左表达式是,则返回右表达式false
  • OR如果左表达式是,则返回左表达式true

您注意到 是 的OR倒数AND吗?只要AND左边在,就一直向右true,LEFT只要左边在,就一直向右false

如果您喜欢这篇文章,请与其他人分享。

(更|多优质内|容:java567 点 c0m)

栏目热文

and有并列意思吗(and后面加什么称呼)

and有并列意思吗(and后面加什么称呼)

我们都知道and是连词,它的常见意思是“和,与;就;而且;但是;然后”。and可以表示并列,可以连接两个动词,两个名词,...

2023-10-31 07:30:50查看全文 >>

and表示或还是与(and和or怎么表示)

and表示或还是与(and和or怎么表示)

此卷为B卷,以听力 笔试的考查方式,侧重对单元基础知识中的重点难点加以回顾与巩固。一起来看看:01一、考查对“young...

2023-10-31 07:41:27查看全文 >>

and什么时候表示并列(and是并列还是递进)

and什么时候表示并列(and是并列还是递进)

往期回顾《新概念英语青少版》学什么:入门A第3单元:http://www.toutiao.com/i6474009194...

2023-10-31 08:03:27查看全文 >>

and表达什么关系(and表示什么的逻辑关系)

and表达什么关系(and表示什么的逻辑关系)

《即兴的智慧》一书是关于如何运用积极的思维方式,在日常生活中更从容地应对各种情境的。书中提到了“es”和“而且”的理念,...

2023-10-31 07:42:59查看全文 >>

and有几种意思(and都有哪几种意思)

and有几种意思(and都有哪几种意思)

2019新人教版必修1-3选修1-4语境记单词 必修第一册语境记单词WELCOME UNIT1 In order to...

2023-10-31 08:08:48查看全文 >>

桌面怎么阻止广告弹窗(怎样设置阻止桌面弹出的广告)

桌面怎么阻止广告弹窗(怎样设置阻止桌面弹出的广告)

使用电脑办公的朋友,一定有关于弹窗广告的烦恼,尤其是教师、PPT讲解者,正在讲述着,突然蹦出一个广告窗口,让人非常尴尬。...

2023-10-31 07:47:58查看全文 >>

桌面总是弹出广告怎么关闭(桌面自动弹出的广告怎么关闭)

桌面总是弹出广告怎么关闭(桌面自动弹出的广告怎么关闭)

手机总弹出广告,关也关不掉,教你一招彻底告别广告弹窗。在平时的工作当中经常会遇到一些中老年朋友拿着他们的手机来找到我的同...

2023-10-31 07:29:32查看全文 >>

桌面上弹出广告窗口如何关掉(桌面弹出广告如何彻底删除)

桌面上弹出广告窗口如何关掉(桌面弹出广告如何彻底删除)

当我们浏览网页时,频繁冒出的广告弹窗不仅干扰了我们的正常浏览体验,还可能存在安全风险。然而,通过一些简单的步骤,我们可以...

2023-10-31 08:14:47查看全文 >>

弹出桌面广告怎么关闭(桌面弹出广告是空白怎么关闭)

弹出桌面广告怎么关闭(桌面弹出广告是空白怎么关闭)

电脑弹窗广告是一个让人非常头痛的问题,相信很多小伙伴应该都遇到过,尤其是在下载了某些流氓软件后,不仅难以删除,还会每天被...

2023-10-31 08:12:04查看全文 >>

保存香蕉最简单的方法(如何保存香蕉的最佳方法)

保存香蕉最简单的方法(如何保存香蕉的最佳方法)

香蕉是一种非常好吃的水果,很多朋友比较喜欢吃,尤其是小孩子。但是香蕉比较容易变质,放不了几天就会坏,特别是一些表面有斑点...

2023-10-31 07:38:59查看全文 >>

文档排行