`

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的&&和||的另类用法|angluo-javascript-110989.pdf

    JavaScript中的逻辑运算符`&&`和`||`通常用于逻辑判断,但在某些场景下,它们还可以作为巧妙的控制流程工具,这就是所谓的“另类用法”。这种用法可以帮助我们写出更简洁、高效的代码。 首先,我们来看`&&`运算符的...

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

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

    解释&&和||在javascript中的另类用法|angluo-javascript-111309.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-70265.pdf

    在JavaScript编程中,`&&` 和 `||` 运算符是两个非常重要的逻辑运算符,它们不仅可以用于基本的逻辑判断,还能在某些场景下帮助我们编写更简洁、高效的代码。下面将详细介绍这两个运算符的一些实用技巧。 1. **`||`...

    JavaScript & jQuery The Missing Manual, 3rd Edition

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

    JavaScript语法&核心对象

    JavaScript是一种广泛应用于网页和网络应用的脚本语言,它的语法和核心对象构成了其强大的功能基础。这个"JavaScript语法&核心对象"的资源是中文版的CHM格式文档,旨在帮助开发者深入理解JavaScript的核心概念和机制...

    JavaScript & jQuery交互式Web前端开发

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

    JavaScript & jQuery 交互式Web前端开发.pdf

    《JavaScript & jQuery 交互式Web前端开发.pdf》2015年的书,彩版

    JavaScript&正则表达式

    JavaScript&正则表达式JavaScript&正则表达式JavaScript&正则表达式JavaScript&正则表达式JavaScript&正则表达式JavaScript&正则表达式JavaScript&正则表达式JavaScript&正则表达式JavaScript&正则表达式JavaScript&...

    JSP&Servlet;&JavaScript;&Ajax;&jQuery;源代码.rar

    这个压缩包文件“JSP&Servlet;...例如,可能会看到如何在JSP中嵌入JavaScript和jQuery代码来处理用户输入,或者如何通过Servlet和Ajax进行后台通信。这样的实践教程对于提高开发者的技术水平和实战能力非常有帮助。

    JavaScript&jQuery;交互式Web前端开发

    通过将编程理论与用来演示JavaScript和jQuery如何被应用于流行站点之上的示例相结合,《JavaScript&jQuery;交互式Web前端开发》将教会您如何让网站更具交互性、吸引性、可用性。很快,您就能够像一名程序员那样去...

    JavaScript & jQuery交互式Web前端开发_PDF电子书下载 高清 带索引书签目录_3

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

    JavaScript&XML.rar

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

    JavaScript&DHTML&CSS中文版参考大全.rar

    在这本《JavaScript&DHTML&CSS中文版参考大全》中,读者可以深入理解这三者的基础概念、语法特性以及实际应用。 JavaScript是一种轻量级的解释型编程语言,主要用于网页和应用程序的客户端脚本。它允许开发者在用户...

    JavaScript&jQuery;交互式Web前端开发 2

    通过将编程理论与用来演示JavaScript和jQuery如何被应用于流行站点之上的示例相结合,《JavaScript&jQuery;交互式Web前端开发》将教会您如何让网站更具交互性、吸引性、可用性。很快,您就能够像一名程序员那样去...

    Web Animation using JavaScript Develop & Design mobi

    Web Animation using JavaScript Develop & Design 英文mobi 本资源转载自网络,如有侵权,请联系上传者或csdn删除 查看此书详细信息请在美国亚马逊官网搜索此书

    JavaScript&JQuery&CSS&CSS等等DIV实例大全.zip

    这个压缩包文件“JavaScript&JQuery&CSS&CSS等等DIV实例大全.zip”显然是一个包含各种示例和教程的集合,旨在帮助开发者深入理解和应用这些技术。 JavaScript是一种在客户端运行的脚本语言,它主要用于网页的交互性...

    ibatis例子加教程&java&javascript&dhtml&正则表达式工具

    标题中的“ibatis例子加教程&java&javascript&dhtml&正则表达式工具”涵盖了五个主要的IT技术领域:iBATIS、Java、JavaScript、DHTML和正则表达式。接下来,我们将深入探讨这些技术及其相关的知识点。 1. iBATIS: ...

Global site tag (gtag.js) - Google Analytics