利用JScript中运算符”||”和&quot澳门金沙30064在线网站;&&”的特殊特性实现代码精简第1/2页

By admin in 计算机教程 on 2019年9月23日

在JScript的众多运算符里,提供了三个逻辑运算符&&||!,噢?!
是高级语言都提供的。按我们对逻辑运算的正常认识,逻辑运算的结果因该是ture或者false。但是JScript的逻辑运算却不完全是这么定义的,这里只有!运算符总是返回true|false,而||和&&运算比较的好玩。

在JScript的众多运算符里,提供了三个逻辑运算符&&||!,噢?!
是高级语言都提供的。按我们对逻辑运算的正常认识,逻辑运算的结果因该是ture或者false。但是JScript的逻辑运算却不完全是这么定义的,这里只有!运算符总是返回true|false,而||和&&运算比较的好玩。

    JScript对于逻辑运算的true|false是这么定义的:

    JScript对于逻辑运算的true|false是这么定义的:

  • 所有对象都被认为是 true。
  • 字符串当且仅当为空(“”或”)时才被认为是 false。
  • null 和未定义的均被认为是 false。
  • 数字当且仅当为 0 时才是 false。
  • 所有对象都被认为是 true。
  • 字符串当且仅当为空(“”或”)时才被认为是 false。
  • null 和未定义的均被认为是 false。
  • 数字当且仅当为 0 时才是 false。

   
可是逻辑运算符||&&虽然遵循上面的定义规则,但是它们返回的值却很有意思。
    对于&&运算,按照上面的规则,表达式 if ( ‘abc’ && ‘123’ && new Date()
) 是执行true分支,可是这个表达式如果写成:

   
可是逻辑运算符||&&虽然遵循上面的定义规则,但是它们返回的值却很有意思。
    对于&&运算,按照上面的规则,表达式 if ( ‘abc’ && ‘123’ && new Date()
) 是执行true分支,可是这个表达式如果写成:

澳门金沙30064在线网站 1var value = ‘abc’ && ‘123’ && new Date();

澳门金沙30064在线网站 2var value = ‘abc’ && ‘123’ && new Date();

    结果value=Fri Jan 21 00:01:17 UTC+0800
2005,原它从左到右检测,如果到了最后一个表达式也是为true的,就返回那个表达式。

    结果value=Fri Jan 21 00:01:17 UTC+0800
2005,原它从左到右检测,如果到了最后一个表达式也是为true的,就返回那个表达式。

发表评论

电子邮件地址不会被公开。 必填项已用*标注

网站地图xml地图
Copyright @ 2010-2019 澳门金沙30064在线网站 版权所有