`

Javascript 中的 && 和 ||

阅读更多

        准备两个对象用于下面的讨论

var alice = {
    name: "alice",
    toString: function () {
        return this.name;
    }
}
var smith = {
    name: "smith",
    toString: function () {
        return this.name;
    }
}

在 javascript 中,对于 && 不仅仅可以用于 boolean 类型,也不仅仅返回 Boolean 类型的结果。

1.如果第一个操作数是 Boolean 类型,而且值为 false ,那么直接返回 false。

2.如果第一个操作数是 Boolean 类型,而且值为 true,另外一个操作数是 object 类型,那么将返回这个对象。

3.如果两个操作数都是 object 类型,那么,返回第二个对象。

4.如果任何一个操作数是 null,那么,返回 null。

5.如果任何一个操作数是 NaN,那么返回 NaN。

6.如果任何一个操作数是 undefinded,那么返回 undefined。

alert(false && alice);         // false
alert(true && alice);          // alice
alert(alice && smith);         // smith
alert(smith && alice);         // alice
alert(null && alice);          // null
alert(NaN && alice);           // NaN
alert(undefined && alice);     // undefined
alert(alice && undefined);     // undefined

 

        对于 || 来说,同样也不仅仅用于 Boolean 类型,也不仅仅返回 Boolean 类型的结果。

事实上,null、undefined、NaN 都将被看作 false,而对象被当作 true。

1.如果第一个操作数是 boolean 类型,而且值为 true, 那么,直接返回 true。

2.如果第一个操作数是 Boolean 类型,而且值为 false ,第二个操作数为 object,那么返回 object 对象。

3.如果两个操作数都是 object 类型,那么返回第一个对象。

4.如果两个操作数都是 null,那么,返回 null。

5.如果两个操作数都是 NaN,那么返回 NaN。

6.如果两个操作数都是 undefined,那么,返回 undefined。

alert(false || alice);         // alice
alert(true || alice);          // true
alert(alice || smith);         // alice
alert(smith || alice);         // smith
alert(null || alice);       // alice
alert(alice || null);       // alice
alert(null || null);        // null
alert(NaN || alice);        // alice
alert(alice || NaN);        // alice
alert(NaN || NaN);          // NaN
alert(undefined || alice);     // alice
alert(alice || undefined);     // alice
alert(undefined || undefined); // undefined
分享到:
评论

相关推荐

    JavaScript中的比较操作符>、<、>=、<=介绍

    在JavaScript编程语言中,比较操作符是比较两个变量或表达式的值并返回一...掌握这些知识点,对于理解和使用JavaScript中的条件语句和循环语句来说至关重要。理解这些操作符可以帮助开发者编写出逻辑正确且高效的代码。

    解释&&和||在javascript中的另类用法|angluo-javascript-111309.pdf

    在JavaScript中,逻辑运算符`&&`(和)和`||`(或)是常用的运算符,它们除了用于逻辑判断外,还有不少“另类”的用法。这些用法能够简化代码、提高效率,尤其在处理特定情况时显得非常方便。下面详细解释这些用法:...

    总结JavaScript中布尔操作符||与&&的使用技巧|angluo-javascript-135172.pdf

    在JavaScript中,布尔操作符`||`(逻辑或)和`&&`(逻辑与)是常见的逻辑操作符,用于处理布尔值的运算。它们在编写条件语句和表达式时非常有用,并且可以根据操作符的特性来简化代码。以下是对这两个操作符使用技巧...

    学习html&css&javascript.zip

    javascript 学习html&css&javascript学习html&css&javascript 学习html&css&javascript学习html&css&javascript 学习html&css&javascript学习html&css&javascript ...

    js中的||和&&运算符(运算符两侧为数字的情况)

    在JavaScript中,逻辑运算符是处理布尔值的基本工具之一,主要包含三种:逻辑与(&&), 逻辑或(||) 和逻辑非(!)。本篇文章主要聚焦于逻辑与和逻辑或运算符,在数字作为操作数时的特性及行为。 ### 一、逻辑与(&&)...

    浅谈javascript中的 “ && ” 和 “ || ”|javascript-64438.pdf

    在JavaScript编程语言中,"&&" 和 "||" 是两种重要的逻辑运算符,它们在条件判断和逻辑表达式中起到关键作用。这篇文章将深入探讨这两种运算符的工作原理和使用场景。 首先,"&&"(逻辑与)运算符的特性是:如果两...

    javascript中关于&& 和 || 表达式的小技巧分享|angluo-javascript-122451.pdf

    在JavaScript编程中,`&&` 和 `||` 表达式是两个非常重要的逻辑运算符,它们具有多种用途,能够帮助开发者编写更简洁、高效的代码。这篇文章将介绍这两个运算符的一些巧妙用法。 首先,`||`(逻辑或)运算符经常被...

    JavaScript & jQuery The Missing Manual, 3rd Edition

    《JavaScript & jQuery The Missing Manual, 3rd Edition》是一本专为初学者和进阶者设计的编程指南,深入浅出地介绍了JavaScript和jQuery这两门在Web开发中至关重要的技术。这本书通过清晰的讲解和丰富的实例,帮助...

    JavaScript & jQuery交互式Web前端开发

    JavaScript & jQuery交互式Web前端开发_PDF电子书下载 高清 带索引书签目录_(美)达克特著_北京:清华大学出版社

    JavaScript中的逻辑判断符&&、||与!介绍

    与C、Java不同的是,JavaScript中逻辑与(&&)和逻辑或(||)操作符可以应用在任何值上,而操作结束后返回的也不一定是boolean值。 逻辑与&&的处理规则 JavaScript中&&的处理规则是这样的: 1.判断第一个值是否为Falsy。...

    JavaScript 入门·JavaScript 具有全范围的运算符

    总结来说,JavaScript具有非常全面和灵活的运算符系统,它允许开发者通过多种方式构建表达式和控制流程,使得编程变得更为高效和有表现力。在学习和使用JavaScript时,掌握这些基本和高级运算符,以及它们的使用方式...

    ARCGIS for javascript 4.2 API&SDK;&中文文档

    ARCGIS for javascript 4.2 API&SDK;&中文文档 亲测有用,欢迎大家下载部署! 另外赠送eclipse部署链接 http://blog.csdn.net/kangkang_style/article/details/71124607

    Javascript 中的 && 和 || 使用小结|angluo-javascript-56652.pdf

    JavaScript 中的逻辑与运算符 `&&` 和逻辑或运算符 `||` 是常用的条件运算符,它们在条件判断中起着重要作用,能够使代码更加简洁。逻辑与运算符 `&&` 用来判断两个条件是否都为真,而逻辑或运算符 `||` 用来判断两...

    JavaScript & jQuery 交互式Web前端开发

    更高效的学习JavaScript和jQuery,快速成为一名Web前端工程师,零基础快速掌握 作者:(美)达科特(Duckett, J.)出版社:清华大学出版社 第1章 编程基础知识 第2章 JavaScript基础指令 第3章 函数、方法与对象 第4章 ...

    挑战JavaScript&Ajax;应用开发》

    《挑战JavaScript & Ajax应用开发》内容简介:Ajax是当今网络应用开发的主流技术,JavaScript是其核心,《挑战JavaScript & Ajax应用开发》从企业开发的实际需求出发,通过范例全方位介绍这2种Web开发技术及其综合...

    全面解析JavaScript中“&&”和“||”操作符(总结篇)

    1、||(逻辑或), 从字面上来说,只有前后都是false的时候才返回false,否则返回true。 alert(true||false); // true alert(false||true)...但是,从深层意义上来说的话,却有另一番天地,试下面代码 ...

    老生常谈javascript中逻辑运算符&&和||的返回值问题|angluo-javascript-187351.pdf

    在JavaScript中,逻辑运算符`&&`(逻辑与)和`||`(逻辑或)不仅用于判断条件,它们还具有一种特殊的行为,即返回值特性。这种特性在编写简洁的代码,尤其是短路运算时非常有用。让我们深入探讨这两种运算符的返回值...

    JavaScript&XML.rar

    JavaScript&XML.rar JavaScript&XML.rar JavaScript&XML.rar

Global site tag (gtag.js) - Google Analytics