为什么AngularJS不允许进行xor操作?

时间:2016-04-21 07:52:58

标签: javascript angularjs

<form name="businessFormAbout" ng-show="(businessFormAbout.$submitted)^(businessForm.$submitted)">

此行在控制台中显示错误:

  

[$ parse:lexerr] Lexer Error:表达式[(businessFormAbout。$ submitted)^(businessForm。$ submitted)]

中30-30行[^]的意外的下一个字符

1 个答案:

答案 0 :(得分:3)

不支持XOR的AngularJS:JavaScript本身并不像你可能定义的那样支持XOR。

JS确实有一个按位XOR运算符(^),但这仅适用于数字。

您可以创建自己的XOR函数,如下所示:

function XOR(a,b) {
   return ( a || b ) && !( a && b );
}