当前位置:首页 > 开发 > Web前端 > JavaScript > 正文

Javascript 中的 && 和 ||

发表于: 2014-08-18   作者:bijian1013   来源:转载   浏览:
JavaScript中<table>中<tbody>
JavaScript中中
摘要:         准备两个对象用于下面的讨论 var alice = { name: "alice", toString: function () { return this.name; } } var smith = { name: "smith",

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

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 中的 && 和 ||

  • 0

    开心

    开心

  • 0

    板砖

    板砖

  • 0

    感动

    感动

  • 0

    有用

    有用

  • 0

    疑问

    疑问

  • 0

    难过

    难过

  • 0

    无聊

    无聊

  • 0

    震惊

    震惊

编辑推荐
对象之间比较比较的是引用地址 对象和其他比较,转成字符串 字符串和数字比较,字符串转成数字 布尔
this是面向对象语言中的一个重要概念,在JAVA,C#等大型语言中,this固定指向运行时的当前对象。但是
浏览器总是在table和tr之间创建tbody标签。因此 <table> <tr> <td></td> &
保留字是不能用作变量名和函数参数的,而作为对象的键,有的可以直接使用,有的需要加引号使用 如:
转载:http://msdn.microsoft.com/en-us/magazine/ff852808.aspx 这篇文章讲Javascript中的原型与继
console.log 原先是 Firefox 的"专利",严格说是安装了 Firebugs 之后的 Firefox 所独有的调试"绝招
在JavaScript 中调用Java 很多人都希望能够在JAVASCRIPT中展现中JAVA的功能,因为如果能够这样的 话
将Javascript代码包含到客户端的一种方式是在一个URL后面跟上一个javascript:伪协议限定符。这种指定
转载:http://msdn.microsoft.com/en-us/magazine/ff852808.aspx 这篇文章讲Javascript中的原型与继
将Javascript代码包含到客户端的一种方式是在一个URL后面跟上一个javascript:伪协议限定符。这种指定
版权所有 IT知识库 CopyRight © 2009-2015 IT知识库 IT610.com , All Rights Reserved. 京ICP备09083238号