码迷,mamicode.com
首页 > 其他好文 > 详细

与(and)&&

时间:2016-01-24 07:01:37      阅读:159      评论:0      收藏:0      [点我收藏+]

标签:

/与(and)&&

var box = (5>3)&&(4>3); 
alert(box); //true

如果脸变的操作数有一个操作数不是boolean值得情况下,于运算就不一定返回布尔值。遵循的规则如下:

a.第一个操作数是对象,则返回第二操作数;

var age = {}&&(4>3);
alert(age);//true

b.第二个操作数是对象,则第一个操作数返回true,才返回第二个操作数,否则返回false;

var box = (4>3)&&{};
alert(box);//[object object]
var age = (3>4)&&{};
alert(age);//false
alert(typeof age);//boolean alert(typeof box);//object

c.有一个操作数是null,则返回null;

var box = null && (3>4);
var age = (3>4) && null;
alert(age);//flase
alert(box);//null

d.有一个操作时undefined,则返回undefined;

var box = undefined && (3>4);
var age = (3>4) && undefined;
alert(age);//flase
alert(box);//undefined
var hight = true && height;
alert(hight);//undefined

e.如果第一个为false,则不执行第二个,直接返回false

var box = false && (3>4);
var age = false && undefined;
alert(age);//flase
alert(box);//undefined

f. 第一个为单独number 或 string,执行第二,否则false

 

总结:看似有六条规定,实质就两条

1.第一个为false,不用执行第二个,直接返回false

2.第一个为true(包括Number、String、对象)或(null、undefined)。

  前者返回第二操作数;后者直接返回null、undefined。

 

与(and)&&

标签:

原文地址:http://www.cnblogs.com/liangcheng11/p/5154491.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!