2.4 Boolean
现在来介绍Boolean类型。Boolean只有一个值,不是true(真)就是false(假)。例如,一个简单的布尔表达式如下所示:
这个示例中,我们创建了一个新的名为javascriptIsCool的变量,并且把Boolean值true赋给它。在下一行中,我们得到javascriptIsCool的值,当然是true。
2.4.1逻辑操作符
就像可以用算术操作符(+、—、*、/等)把数字组合起来一样,我们也可以用布尔操作符把布尔值组合起来。当用布尔操作符组合布尔值时,结果总是另一个布尔值(true或false)
JavaScript中的3个主要布尔操作符是&&、||和!。它们看上去有点奇怪,但是稍加练习,用起来并不难。我们试试看。
&&(与)
&&表示“与”。当读出声的时候,人们将其读作“and”“andand”或者“and符和and符”(and符是字符&的名字)。使用&&操作符来判断两个布尔值是否都为真。
例如,在去学校前,你想要确认是否已经洗澡并背上书包,如果两者都为真,就可以去上学,如果有一个为假或者两个都为假,就不能离开家门。
这里,把变量hadShower设置为true,把变量hasBackpack设置为false。当输入hadShower&&hasBackpack时,实际上是在问JavaScript“这两个值都是true吗?。既然它们不是都为true(没有背上书包),那么JavaScript会返回false(还没有为上学做好准备)。
再试一次,这次把两个值都设置为true:
JavaScript现在告诉我们hadShower&&hasBackpack为true。你已经为上学做好准备。
||(或)
布尔操作符||表示“或”,可以读作“or”“or-or”,但也有人称之为“管道符”,因为程序员将|字符称为管道。使用该操作符可以判断两个布尔值中是否有一个为真。
例如,假设还是准备去上学,需要带一份水果作为午餐,但是既可以带苹果,也可以带橙子,或者两者都带。可以用JavaScript判断是否至少带了一份水果,如下所示:
如果hasApple是true或者hasOrange是true,或者两个都是true,则hasApple||hasOrange为true。但是如果两个都是false,则结果为false(没有带任何水果)。
!(非)
!表示“非”。可以称之为“not”,但很多人称之为“惊叹号”。使用它把假转换成真,或者把真转换成假。这对于值的取反很有帮助。例如:
这个示例中,把变量isWeekend设置为true。然后把变量needToShower Today设置为!isWeekend。“非”把这个值转换成它的相反值,所以如果isWeekend是true,那么!isWeekend就是false。所以,当查看needToShower Today的值时,会得到false(今天不需要洗澡,因为今天是周末)。
因为needToShower Today是false,所以!needToShower Today就会为true。
换句话讲,你今天真的不需要洗澡。
组合逻辑操作符
当把逻辑操作符组合到一起时,它们变得有趣起来。例如,今天不是周末,需要去上学,你已经洗了澡并且带了一个苹果或者一个橙子,我们可以用JavaScript来检测所有这些是否为真,如下所示:
在这个示例中,今天不是周末,你已经洗了澡,你没有带苹果但是带了一个橙子,所以你可以上学去了。
hasApple||hasOrange放在圆括号中,因为我们想要JavaScript确保这部分先执行。就像JavaScript会先计算*再计算+ 一样,在逻辑语句中,也会先计算&&再计算||。
参考文献:《JavaScript for kids》By Nick Morgan 来源:http://www.allitebooks.org
本站内容未经许可,禁止任何网站及个人进行转载。