私はこれを使用しようとしており、動作していないようです。私はそれがちょうどオプションではないと推測しているが、確認したい。これは有効ですか?インラインJavaScriptのif文でelseを省略することはできますか?
(if_it_is) ? thats_cool();
私はこれを使用しようとしており、動作していないようです。私はそれがちょうどオプションではないと推測しているが、確認したい。これは有効ですか?インラインJavaScriptのif文でelseを省略することはできますか?
(if_it_is) ? thats_cool();
あなたがそこに&&
を使用することができます。
if_it_is && thats_cool();
を基本的に同じです:あなたは三項演算子を使用していることを達成することはできません
if (your_expression){
thats_cool();
}
が、あなた缶使用&&
の短絡の性質はあなたが望むことをする。
(if_it_is) && thats_cool();
いいえ、できません。 ?:
は三項演算子であり、そのオペランドの3つすべてを持たなければならない(MUST)。
いいえ、できません。これは "インラインif文"ではなく、の3進演算子であり、それはまあ... 3進である。
(if_it_is) ? thats_cool() : null;
あなたは、操作の戻り値に興味があるように思えませんので、あなただけ書くことができます:
if (if_it_is) thats_cool();
を
けれども。それは三元を使うよりもスタイルが良いでしょう。
3番目のコンポーネントがありません。そのようなものでなければなりません:
(if_it_is) ? thats_cool() : not_too_cool();
全体の意味は次のとおりです。
condition ? do_something_if_condition_is_true : do_something_if_condition_is_false;
いいえ、それは有効ではありません。
条件付き演算子は、x ? y : z
の形式をとります。第3オペランドは、if
のelse
と異なり、常に存在しなければなりません。
あなたが使用しようとしているのはTernary Operatorです。あなたはそれの他の部分を欠いています。
あなたが好きな何かができる:
(if_it_is) ? thats_cool() : function(){};
または
(if_it_is) ? thats_cool() : null;
あるいは、他の人が示唆しているとして、あなたは他を気にしないならば、あなたは三元を避けることができます。
if_it_is && thats_cool();
JavaScriptでは、ほとんどの言語と同様に、これらの論理チェックは左から右へと進みます。したがって、最初にif_it_is
が以外の文字列の'trusy' value(true
,)であるかどうかを確認します。もしそれが合格しなければ、残りの声明は出ません。合格した場合は、ロジックの次のチェックとしてthats_cool
を実行します。
ifステートメントの内部と考えることができます。 ifなし。だから、略語のようなものです
if (if_it_is && thats_cool()) { }
いいえ、それはオプションではありません。 'thats_cool()'が 'true'と評価される値を返す限り、代わりにバイナリ演算子(&&)を使用します。 –
それには ':'とそれに続く値が必要です。あなたが望むなら、 'do_nothing()'という名前の関数を作成するだけでよいのですが...何もしません。 – Edwin
user1048967、これは 'if(){}'と呼ばれます。 – Dykam