奇怪的javascript语法

奇怪的javascript语法,javascript,syntax,Javascript,Syntax,有人可以帮我学习以下Js语法吗? 我不理解以“($.inArray(wzdId,this…”开头的行” 我的意思是为什么那句话是从父母开始的? 这是什么意思 这是完整的代码: _activateStep: function( wzdId ) { if ( condition ) { var stepIndex = this._findNav( wzdId ).index(); for( var i = 0; i < stepIndex; ++i) { i

有人可以帮我学习以下Js语法吗? 我不理解以“($.inArray(wzdId,this…”开头的行” 我的意思是为什么那句话是从父母开始的? 这是什么意思

这是完整的代码:

_activateStep: function( wzdId ) {
  if ( condition ) {
    var stepIndex = this._findNav( wzdId ).index(); 
    for( var i = 0; i < stepIndex; ++i) { 
      if( condition ) === -1 ) {
        return;
      }
    }
    ( $.inArray( wzdId, this._activatedSteps ) === -1 ) && this._activatedSteps.push( wzdId );
  }
}
\u activateStep:函数(wzdId){
如果(条件){
var stepIndex=this._findNav(wzdId).index();
对于(var i=0;i
谢谢你

你这里的是

A && B
它使用了一个基于短路的常见技巧:只有当a为真时,才会执行B

这是另一种写作方式

if (A) B;

有些人喜欢它,因为它有点短。显然,它的可读性也差得多。

大括号可以放在任何一个语句周围。好的。我自己经常使用a&(B)。我使用OR(
|
)运算符设置默认值,如
var a=yourPassVal | | 0
,但当允许使用错误的值而默认值不是时,您必须小心。而且您可以用它清晰快速地完成许多有趣的事情!感谢大家的帮助!括号(
(…)
)在本例中是分组运算符。您可以使用它来更改优先级顺序或使表达式更具可读性。例如:
6*(4+3)
(5*2)+(4*8)
。明白了,谢谢Felix!