私はいつもnull
何もないelse条件を置かなければなりませんでした。とにかく周りにありますか?例えば
condition ? x = true : null;
基本的に、行う方法はありますか:
condition ? x = true;
今度は構文エラーとして表示されます
参考までに、ここにいくつかの実際のサンプルコードがあります:
!defaults.slideshowWidth ? defaults.slideshowWidth = obj.find('img').width()+'px' : null;
まず、3項式はif / else構成の代わりにはなりません。これは、値を返す if / else構成と同等です。つまり、もし/ else節は三式があり、コードで表現、それが値を返すことを意味し、。
これはいくつかのことを意味します:
=
、戻り値が割り当てられている場合にのみ、3項式を使用しますx = true
すべての式が最後の値を返すため、式はtrueを返しますが、xを変更せずにxを変更して戻り値に影響を与えます)要するに-三元表現の「正しい」使用は
var resultofexpression = conditionasboolean ? truepart: falsepart;
condition ? x=true : null ;
3値式を使用しての値を設定する例の代わりに、次のように使用x
できます。
condition && (x = true);
これはまだ式であるため、検証に合格しない可能性があるため、さらに優れたアプローチは
void(condition && x = true);
最後のものは検証に合格します。
ただし、期待値がブール値の場合は、条件式自体の結果を使用するだけです。
var x = (condition); // var x = (foo == "bar");
更新サンプルに関連して、これはおそらくより適切です。
defaults.slideshowWidth = defaults.slideshowWidth || obj.find('img').width()+'px';
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加