程序员人生 网站导航

JavaScript第四课:Making Decisions[下]

栏目:jscript时间:2014-02-11 00:45:44

《零基础学JavaScript》 JavaScript第四课 Making Decisions(下)

第四课分为7个小节:

(此文章又长又臭,但是极其形象易懂,仅适合于JavaScript初学者,尤其是零基础者)

译文作者:胆晓茹鼠

作者网站:http://www.haoxiaoru.info/

课程回顾:

JavaScript第一课:变量Variables

JavaScript第二课:运算符Operators

JavaScript第三课:Making Decisions[上]

4.1 非布尔值结果

之前的教程中我们看到了,当运算中包括数字和字符串时,JavaScript如何在它们之间进行转换。与此类似,当需要布尔值才能执行的时候,JavaScript会把其它数据类型转换成布尔值。

大部分的值会被当做true,只有少数例外,比如值为0的数字变量和包含空字符串的字符串的变量。如下所示:

if (1) { . . . true
if (0) { . . . false
if (“”) { . . . false
if (” “) { . . . true
if {“0″) { . . . true
if (undefined) { . . . false
if (null) { . . . false

其中最后两个,变量值为undefined和null,常用来进行feature sensing。就是说,我们可以对不支持某些特殊features的浏览器,隐藏一部分JavaScript代码,从而让JavaScript代码可以在多浏览器中正确执行。

4.2 多重条件测试

算数运算的时候,经常不只包括两个数字和一个运算符。同样的情况,if条件判断的时候,也不只会包含一个二值比较结果。结合多个数字运算,只需要增加同类型的算数运算符,比如a+b+c;结合多个比较运算的的结果要复杂一些。我们不是要判断诸如a==b==c这种情况,而是要判断当两个条件同时成立或不成立,以及仅有一个条件成立时的情况。

 

在JavaScript中,可以使用逻辑运算符组合比较运算组合的结果。有三个逻辑运算符:与 &&,或 ||,非 !。如果你不熟悉逻辑运算结果,请看下表。

逻辑“与”运算符
&& true false
true true false
false false false
逻辑“或”运算符
|| true false
true true true
false true false
逻辑“非”运算符
!  
true false
false true
  • 逻辑&&运算符,仅当两个条件均为true时,才为true。这意味着,当左边的条件为false时,就不需要判断右边了,结果肯定为false。
  • 逻辑||运算符,只要一个条件为true,结果就为true。这意味着,当左边的条件为true时,就不需要判断右边了,结果肯定为true。
  • 逻辑!运算符,通常用户转换布尔值变量的结果。

提醒:别忘了&&是两个&组成的,||是两个|组成的。如果只写一个,就是位运算符,结果就大相径庭了。

优先顺序:算数运算符>比较运算符>逻辑运算符。同运算符优先顺序为从左到右。如果逻辑运算符不需运算完成就能出结果,就不需要运算完。

任何情况下,你想改变优先级顺序时,可以使用圆括号()。有时候,为了阅读更容易,也可以使用圆括号(),没有改变优先级顺序但是易读。

翻译未完成,待续。

------分隔线----------------------------
------分隔线----------------------------

最新技术推荐