首页 理论教育JavaScript逻辑运算符实例

JavaScript逻辑运算符实例

【摘要】:进行逻辑运算需要知道操作数的布尔值,因为JavaScript是弱类型语言,所以在进行布尔运算时要根据一定的规则将操作数转换为布尔值。图4.4.1逻辑与运算提示虽然逻辑运算会将操作数转换为布尔值,但逻辑与和逻辑或表达式返回的是操作数的值,而不是表达式对应的布尔值,这一点与其他语言可能不同。

逻辑运算是指根据操作数的真值判断表达式的真值,包括逻辑与(&&)、逻辑或(||)、逻辑非(!)。

进行逻辑运算需要知道操作数的布尔值,因为JavaScript是弱类型语言,所以在进行布尔运算时要根据一定的规则将操作数转换为布尔值。转换为布尔值时等于false的非布尔值包括:

◇ null;

◇ undefined;

◇ 0;

◇ 非数字NaN;

◇ 空字符串""。

其他非布尔值转换为布尔值均为true。

逻辑表达式的含义:

◇ 逻辑与表达式a&&b,当a、b对应的布尔值都为真时,结果为真,否则为假。

◇ 逻辑或表达式a||b,当a、b中至少有一个的布尔值为真时,结果为真,否则为假。

◇ 逻辑非表达式!a,当a的布尔值为假时,结果为真,否则为假。

1.逻辑与运算

4.4.1.html获取操作数的逻辑与运算结果,运算符&&两侧的表达式全部为真时整个表达式才为真,如下所示。

动手写4.4.1

执行4.4.1.html,输出结果到网页,如下图所示。

图4.4.1 逻辑与运算

提示

虽然逻辑运算会将操作数转换为布尔值,但逻辑与和逻辑或表达式返回的是操作数的值,而不是表达式对应的布尔值,这一点与其他语言可能不同。

2.逻辑或运算

4.4.2.html获取操作数的逻辑或运算结果,运算符||两侧的表达式只要有一项为真,整个表达式就为真,如下所示。

动手写4.4.2

执行4.4.2.html,输出结果到网页,如下图所示。

图4.4.2 逻辑或运算(www.chuimin.cn)

3.逻辑非运算

4.4.3.html获取操作数的逻辑非运算结果,如下所示。

动手写4.4.3

执行4.4.3.html,输出结果到网页,如下图所示。

图4.4.3 逻辑非运算

4.连续逻辑运算

逻辑运算和算术运算一样,允许多个操作数一起参与计算。

4.4.4.html同时对多个操作数进行逻辑运算,如下所示。

动手写4.4.4

执行4.4.4.html,查看浏览器类型,如下图所示。

图4.4.4 连续逻辑运算

逻辑与和逻辑或都支持连续运算。

5.获取操作数布尔值

使用函数Boolean()返回操作数的布尔值,也可以对该操作数进行两次逻辑取反获取对应的布尔值。

4.4.5.html分别使用Boolean()函数和两次逻辑非运算获取操作数布尔值,如下所示。

动手写4.4.5

执行4.4.5.html,输出操作数的布尔值到网页,如下图所示。

图4.4.5 使用连续取非运算获取操作数布尔值

提示

!0与true全等,且比true少两个字符;!1与false全等且少三个字符。执行JavaScript压缩时常常利用此特性减少字符数量。