2012-02-13 5 views
0

誰かが私に何を教えてもらえますか?下のjsの意味ですか?
errMess =
t.original未定義と等しくない状況と
:私は不注意な意味を変更したくなかったので、私はラインとして、私はこれを読んで...JSの行を読むためのヘルプ

errMess = t.origStatus != undefined && t.status != t.origStatus && t.statuseffective == null ? errMess + t.systemname + ": Status effective date invalid.\n" : errMess; 

をJSコードをラップしませんでした元の状態に等しくないt.statusと
statuseffectiveがnull に等しいですか? < - これが何を意味するのかわからない

+0

説明は、C#のためであるが、意味は同じ http://msdn.microsoft.com/en-us/library/ty67wk28.aspx –

答えて

3

建設がternary operatorです。

コードは次のように書くこともできます。

if (A) { 
    X = B; 
} else { 
    X = C; 
} 

その他の注意事項:

if (t.origStatus != undefined 
    && t.status != t.origStatus 
    && t.statuseffective == null) { 
    errMess = errMess + t.systemname + ": Status effective date invalid.\n"; 
} else { 
    errMess = errMess; 
} 

ので、は同等です

  • t.origStatus != undefinedであるため、t.origStatus != nullに相当します等価比較、nullは012に等しい。それはnullまたはundefinedと比較するために本当に重要だ場合は、代わりにアイデンティティ演算子を使用します。t.origStatus === undefined
+0

あなたはyes123 I @他 – dynamic

+0

を必要としないことです。よくここで説明していますそれは必要ありませんが、それは 'errMess = ..? ..:errMess; '。それを省略すると、答えが正しくないでしょう。 –

+0

@ rob-wまさに私が必要としていたことです...ありがとうございました。しかし、それを聞く方法は分かりませんでした。 :) – HPWD

1

これはif節の略語です。詳細はMDN conditional operatorをご覧ください。 全長では、あなたのコードは次のようになります。問題の

if (t.origStatus != undefined && t.status != t.origStatus && t.statuseffective == null) { 
    errMess = errMess + t.systemname + ": Status effective date invalid.\n"; 
} else { 
    errMess = errMess; 
} 
0
if (t.origStatus != undefined && t.status != t.origStatus && t.statuseffective == null) 
     errMess = errMess + t.systemname + ": Status effective date invalid.\n"; 
関連する問題