web前端培训教程:逻辑运算符.docxVIP

  1. 1、本文档共5页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
web前端培训教程:逻辑运算符

web前端培训教程:逻辑运算符逻辑运算符通常用于布尔值的操作,一般和关系运算符配合使用,有三个逻辑运算符:逻辑与(AND)、逻辑或(OR)、逻辑非(NOT)。1.逻辑与(AND) : var box = (5 4) (4 3) //true,两边都为 true,返回 true如果两边的操作数有一个操作数不是布尔值的情况下,与运算就不一定返回布尔值,此时,遵循已下规则:1.第一个操作数是对象,则返回第二个操作数;2.第二个操作数是对象,则第一个操作数返回 true,才返回第二个操作数,否则返回 false;3.有一个操作数是 null,则返回 null;4.有一个操作数是 undefined,则返回 undefined。var box = 对象 (5 4); //true,返回第二个操作数var box = (5 4) 对象; //[object Object]var box = (3 4) 对象; //falsevar box = (5 4) null; //null逻辑与运算符属于短路操作,顾名思义,如果第一个操作数返回是 false,第二个数不管是 true 还是 false 都返回的 false。var box = true age; //出错, age 未定义var box = false age; //false,不执行 age 了2.逻辑或(OR): ||var box = (9 7) || (7 8); //true,两边只要有一边是 true,返回 true如果两边的操作数有一个操作数不是布尔值的情况下,逻辑与运算就不一定返回布尔值,此时,遵循已下规则:1.第一个操作数是对象,则返回第一个操作数;2.第一个操作数的求值结果为 false,则返回第二个操作数;3.两个操作数都是对象,则返回第一个操作数;4.两个操作数都是 null,则返回 null;5.两个操作数都是 NaN,则返回 NaN;6.两个操作数都是 undefined,则返回 undefined;var box = 对象 || (5 3); //[object Object]var box = (5 3) || 对象; //truevar box = 对象 1 || 对象 2; //[object Object]var box = null || null; //nullvar box = NaN || NaN; //NaNvar box = undefined || undefined; //undefined和逻辑与运算符相似,逻辑或运算符也是短路操作。当第一操作数的求值结果为 true,就不会对第二个操作数求值了。var box = true || age; //truevar box = false || age; //出错, age 未定义我们可以利用逻辑或运算符这一特性来避免为变量赋 null 或 undefined 值。var box = oneObject || twoObject; //把其中一个有效变量值赋给 box3.逻辑非(NOT): !逻辑非运算符可以用于任何值。无论这个值是什么数据类型,这个运算符都会返回一个布尔值。它的流程是:先将这个值转换成布尔值,然后取反,规则如下:1.操作数是一个对象,返回 false;2.操作数是一个空字符串,返回 true;3.操作数是一个非空字符串,返回 false;4.操作数是数值 0,返回 true;5.操作数是任意非 0 数值(包括 Infinity), false;6.操作数是 null,返回 true;7.操作数是 NaN,返回 true;8.操作数是 undefined,返回 true;var box = !(5 4); //falsevar box = !{}; //falsevar box = !; //truevar box = !Lee; //falsevar box = !0; //truevar box = !8; //falsevar box = !null; //truevar box = !NaN; //truevar box = !undefined; //true使用一次逻辑非运算符,流程是将值转成布尔值然后取反。而使用两次逻辑非运算符就是将值转成成布尔值取反再取反,相当于对值进行 Boolean()转型函数处理。var box = !!0; //falsevar box = !!NaN; //false通常来说,使用一个逻辑非运算符和两个逻辑非运算符可以得到相应的布尔值,而使用三个以上的逻辑非运算符固然没有错误,但也没有意义。

文档评论(0)

hhuiws1482 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

版权声明书
用户编号:5024214302000003

1亿VIP精品文档

相关文档