JavaScript 按位与和逻辑与

逻辑与操作符有两个和好(&&)表示,有两个操作数,如下面的例子所示:

var result = true && false;

 
第一个操作数 第二个操作数 结果
true true true
true false false
false true false
false false false

逻辑与操作可以应用于任何类型的操作数,而不仅仅是布尔值。在有一个操作数而不是一个布尔值的情况下,逻辑与操作就不一定返回布尔值;此时,它遵循下列规则:

如果第一个操作数是对象,则返回第二个操作数;

如果第二个操作数是对象,则只有在第一个操作数的求之结果是为true的情况下才会返回对象;

如果两个操作数都是对象,则返回第二个操作数;

如果有一个操作数为null,则返回null;

如果有一个操作数是NaN,则返回NaN;

如果有一个操作数是undefined,则返回undefined。

  逻辑与操作属于短路操作,即如果第一个操作数就能决定结果,那么就不会再对第二个操作数求值。对于逻辑与操作而言,如果第一个操作数是false,则无论第二个操作数是什么值,结果都不再可能是true了。

时间: 2024-10-12 21:15:21

JavaScript 按位与和逻辑与的相关文章

javascript使用两个逻辑非运算符(!!)的原因

javascript使用两个逻辑非运算符(!!)的原因:关于逻辑非运算符的使用这里就不用说了,比较简单,如果不了解可以参阅javascript的逻辑运算符一章节.在有些代码中可能大家可能会注意到有些地方使用了两个逻辑非运算符,第一感觉就是没有必要,比如操作数是true的话,使用两个逻辑非的返回值还是true,好像多此一举的行为,其实如果深究起来并非如此.先看一段代码实例: grep:function(elems,callback,inv ) { var ret=[],retVal; inv=!!

JavaScript学习总结(四)——逻辑OR运算符详解

在JavaScript中,逻辑OR运算符用||表示 1 var bTrue = true; 2 var bFalse = false; 3 var bResult = bTrue || bFalse; 下面的真值表描述了逻辑AND运算符的行为: 运算数 1 运算数 2 结果 true true true true false true false true true false false false 在JavaScript中,0,"",false,null,undefined,NaN

逻辑与,按位与;逻辑或,按位或 之间的区别

逻辑与.逻辑或.逻辑非是对boolean值得操作,属于离散数学范畴.按位与.按位或.按位非是对计算机位的操作,属于计算机二进制位运算范畴.逻辑与 都是真才真 c中区分&.&&的区别.逻辑或 有真就是真 c中区分|.||的区别.逻辑非 假才真 c中为!.按位与.按位或.按位非按照上面的规则对每一位进行逻辑运算,其中1代表真0代表假. 一个是位操作,一个是条件计算操作逻辑运算符用来判断真假:位操作符用来计算. C/C++ &与&& |与|| 的区别: &

【JavaScript】JavaScript赋值语句中的逻辑与&&和逻辑或||

在其他语言中,我们往往看到逻辑符号出现在判断语句当中,如 if(a||b){} 但在一些js相关的面试题或者书中,我们有时会看到逻辑与&&和逻辑或||符号出现在赋值语句或者返回语句中,如 var x=a||b; return a&&b||c; 第一次看到时,我们很可能一头雾水,这是怎么回事? 因为在js中允许使用表达式赋值,所得的值为该表达式的运算结果.如 var a= 5; var b= 6; var c= a+b; a= 10; console.log(c);//11

JavaScript 相关记录

JavaScript 堪称世界上被人误解最深的编程语言.虽然常被嘲为"玩具语言",但在它看似简洁的外衣下,还隐藏着强大的语言特性. JavaScript 目前广泛应用于众多知名应用中,对于网页和移动开发者来说,深入理解 JavaScript 就尤有必要. 先从这门语言的历史谈起是有必要的.在1995 年 Netscape 一位名为 Brendan Eich 的工程师创造了 JavaScript,随后在 1996 年初,JavaScript 首先被应用于 Netscape 2 浏览器上.

JavaScript重新介绍

本文转载自 https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/A_re-introduction_to_JavaScript 引言 为什么会有这一篇“重新介绍”呢?因为 JavaScript 堪称世界上被人误解最深的编程语言.虽然常被嘲为“玩具语言”,但在它看似简洁的外衣下,还隐藏着强大的语言特性. JavaScript 目前广泛应用于众多知名应用中,对于网页和移动开发者来说,深入理解 JavaScript 就尤有必要. 先从这门语言

kettle中使用JavaScript的一个例子

最近在使用kettle的时候遇到一个问题,需要对输入的一个字段进行格式化,逻辑比较复杂(需要做替换掉指定的字符串,然后将数字部分不足四位的数前边补0等操作),kettle中没有提供直接的插件来支持复杂的业务逻辑处理,所以就自己写代码来处理. kettle中可以支持Java代码和JavaScript代码,java代码我尝试了几次,不是太稳定,所以就使用了JavaScript 1.在左侧选择脚本中的 JavaScript代码 2.上个步骤传过来的字段 都在Input fields中,在JavaScr

深入 JavaScript

引言 为什么会有这一篇"重新介绍"呢?因为 JavaScript 堪称世界上被人误解最深的编程语言.虽然常被视作"玩具语言",但它看似简洁外衣下,还隐藏着强大的语言特性. JavaScript 目前广泛应用于一大批知名应用中,对于网页和移动开发者来说,深入理解 JavaScript 就尤有必要. 先从这门语言的历史谈起.1995 年 Netscape 一位名为 Brendan Eich 的员工创造了 JavaScript,随后在 1996 年初,JavaScript

javascript一些有用但又不常用的特性

1.onclick="save();return false;" 取消“浏览器默认行为”.     比如一个链接     <a href="http://zhidao.baidu.com">百度知道</a>     当我们点击这个链接时,浏览器会自动跳转到:zhidao.baidu.com这个地址,这是浏览器的默认行为,如果我们这么做:     <a href="http://zhidao.baidu.com" on