javascript逻辑运算符

javascript逻辑运算符

ID:12572415

大小:30.10 KB

页数:5页

时间:2018-07-17

javascript逻辑运算符_第1页
javascript逻辑运算符_第2页
javascript逻辑运算符_第3页
javascript逻辑运算符_第4页
javascript逻辑运算符_第5页
资源描述:

《javascript逻辑运算符》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、javascript逻辑运算符“

2、

3、”和“&&”一、先来说说

4、

5、(逻辑或),从字面上来说,只有前后都是false的时候才返回false,否则返回true。alert(true

6、

7、false);//truealert(false

8、

9、true);//truealert(true

10、

11、true);//truealert(false

12、

13、false);//false复制代码但是,从深层意义上来说的话,却有另一番天地,试下面代码alert(0

14、

15、1);显然,我们知道,前面0意味着false,而后面1意味着true,

16、那么上面的结果应该是true,而事实返回的结果是1。再看下面代码:alert(2

17、

18、1);我们知道,前面2是true,后面1也是true,那返回结果又是什么呢?测试结果是2,继续看:alert('a'

19、

20、1);同样,前面'a'是true,后面1也是true;测试结果是'a',下面alert(''

21、

22、1);由上,我们知道前面''是false,后面1是true,而返回结果是1。再看下面alert('a'

23、

24、0); 前面'a'是true,而后面0是false,返回结果是'a',继续下面alert('a'

25、

26、

27、'b'); 前面'a'是true,后面'b'是false,返回结果是'a',我们继续下面alert(''

28、

29、0); 前面''是false,后面0同样是false,返回结果是0alert(0

30、

31、'');前面0是false,后面''是false,返回结果是'' 这就意味1、只要“

32、

33、”前面为false,不管“

34、

35、”后面是true还是false,都返回“

36、

37、”后面的值。2、只要“

38、

39、”前面为true,不管“

40、

41、”后面是true还是false,都返回“

42、

43、”前面的值。 --------------------

44、--------------------------------------------------------------------------------------二、下面说说&&(逻辑与),从字面上来说,只有前后都是true的时候才返回true,否则返回false。alert(true&&false);//falsealert(true&&true);//truealert(false&&false);//falsealert(false&&true);//false复制代码然后,根据上面经

45、验,我们看看“&&”号前后,不单单是布尔类型的情况。alert(''&&1);结是返回'',“&&”前面''是false,后面是1是true。alert(''&&0);结是返回'',“&&”前面''是false,后面是0也是false。alert('a'&&1);结是返回1,“&&”前面''a是true,后面是1也是true。alert('a'&&0);结是返回0,“&&”前面''a是true,后面是0是false。alert('a'&&'');结是返回'',“&&”前面''a是true,后面是''是

46、false。alert(0&&'a');结是返回0,“&&”前面''0是false,后面是'a'是true。alert(0&&'');结是返回0,“&&”前面''0是false,后面是''也是false。 这意味着1、只要“&&”前面是false,无论“&&”后面是true还是false,结果都将返“&&”前面的值;2、只要“&&”前面是true,无论“&&”后面是true还是false,结果都将返“&&”后面的值;  让我们总结一下:1、只要“

47、

48、”前面为false,无论“

49、

50、”后面是true还是f

51、alse,结果都返回“

52、

53、”后面的值。2、只要“

54、

55、”前面为true,无论“

56、

57、”后面是true还是false,结果都返回“

58、

59、”前面的值。3、只要“&&”前面是false,无论“&&”后面是true还是false,结果都将返“&&”前面的值;4、只要“&&”前面是true,无论“&&”后面是true还是false,结果都将返“&&”后面的值;由上两个测试可知,逻辑运算符,“

60、

61、”和“&&”都是遵行短路原则,只要确定符号前面的真假,既可确定返回值。需要说明的是“&&”的优先级是高于“

62、

63、”的,下面测试

64、:alert(1

65、

66、'a'&&2);返回结果是1。根据反证原理,我们假设“

67、

68、”的优先级不低于“&&”(这里只所以用“不低于”,是为了同时证明等级相同的情况)。根据上面我们得出的结论(1),(1

69、

70、'a')将返回前面的值1,(1&&2)根据结论(4)应该返回后面的值2。这显然不对,由此可知“&&”的优先级是高于“

71、

72、”的。JavaScript逻辑运算符及优先级时间:2011年07月06日作者:愚人码头查看次数:3,130views评论次数:12今天看了一

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。