JavaScript程序设计:基础·PHP·XML
上QQ阅读APP看书,第一时间看更新

2.5.4 条件操作符

JavaScript也包含另一个操作符,它相当于将第3章讨论的一条语句的缩写。条件操作符根据某个条件将一个值赋给一个变量,它使用两个符号而且有3个操作数。与其他操作符相比,条件操作符比较特殊,因此本节单独讨论。

操作数是指操作符操作的对象。到现在为止,所有操作符都有两个操作数,除了NOT之外。例如:

·5+3:操作符是+,而操作数是5和3。

·16>=10:操作符是>=,而操作数是16和10。

·True&&false:操作符是&&,而操作数是true和false。

·!true:操作符是!,而单个操作数是true。

条件操作符写成如下形式:

为了便于理解它,我们举一个例子。假定你想要测试游戏中某个人是否有足够的分数赢得一场战斗。如果这个人至少有100分,那么将变量battle设置为“win”;但是如果这个人的分数少于100分,那么将变量battle设置为“lose”。假定这个人的分数存储在变量points中,那么可以如下使用条件操作符:

这个语句是说:如果points的值大于或等于100,那么设置battle为“win”;但是如果points小于100,那么将battle设置为“lose”。

因此,条件操作符这样工作:要测试的条件在问号?之前的圆括号内,问号?之后的值将在条件为true时存储到左边的变量中。一个冒号(:)分隔两个值,第二个值将在条件为false时存储到左边的变量中。

例2.22说明如何使用条件操作符。

例2.22 使用条件操作符 假定你正在为一个网上商店编写程序,它为特殊客户提供一个免运费访问密码,从而程序要检查用户是否录入正确的密码(FREESHIP)。如果正确录入了密码,那么显示一条告诉用户免运费的信息;否则显示信息“invalid code”。这个JavaScript程序代码片段如下:

条件操作符在第7行使用。测试条件是判断shipCode存储的代码是否与FREESHIP完全相同,如果检测条件是true,那么存储在message的值将是“You are eligible for free shipping!”;如果是false,那么存储在message的值将是“invalid code”。

2.5节检查点

2.21 使用后面单词之一填空:算术、关系或逻辑。

a)<=是________操作符。

b)+是________操作符。

c)&&是________操作符。

2.22 假定X=1和Y=2。指出下列每个表达式是true还是false。

a)X>=X||Y>=X

b)X>X&&Y>X

c)X>Y||X>0&&Y<0

d)!(!X==0&&!Y==0)

2.23 描述条件操作符每个部分的作用:

2.24 如果K=4、M=7和P=2,那么将把什么存储在result中?

2.25 如果myName=“Lizzie”和yourName=“Jimmy”,那么当用户在提示时录入Jimmy时,变量message存储的值是什么?