問題タブ [ternary]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
16 に答える
2465 参照

c# - これは三項演算子の合理的な使用法ですか?

次のようなコードに起因する理解/保守性の問題はありますか?

など。

混乱する可能性のあるアイデアは、通常の説明である変数代入ではなく、プログラム フローに三項演算子を使用することです。

この使用法に対処するコーディング標準が機能しているのを見たことがないので、これを快適に行うことができる一方で、そうしない正当な理由があるかどうかを知りたい.

0 投票する
2 に答える
1332 参照

php - どういう意味ですか?expr1 = expr2 Mod expr3 = 0

そこで、VBA アプリケーションを PHP に移植していて、この素晴らしい小さなコードに出くわしました。

三項演算子のように振る舞っていると思っていましたが、単純な if then ステートメントに分解すると、結果は期待どおりではありませんでした。そこで、素晴らしいスタックオーバーフローコミュニティに助けを求め、わかりやすい言葉で説明してもらいました。他の回答を見ると、がっかりしないことがわかります。[/end Brown_nose>]

0 投票する
4 に答える
882 参照

php - PHPの三項演算子が機能しない

以下のコードは配列値を取ります。キーが存在する場合は、その値をエコーアウトする必要があります。3値のif / else部分は機能しますが、値が表示されません。なぜ機能しないのかを誰かが理解できますか?

また、falseをエコーアウトする場合、キーが存在しない場合は出力は必要ありません。falseという単語を削除するだけですか、それともコードに1つの値のみを表示させるための何かがありますか?

0 投票する
4 に答える
3448 参照

c++ - 三項演算子の評価順序

上記の例で、some_conditionがtrueの場合、なぜtestは(6.1ではなく)6に等しいのですか?

以下のようにコードを変更すると、6.1の値が返されます

(元の例では)Foo :: operator doubleからの戻り値はintにキャストされてから、doubleに戻されるようです。なんで?

0 投票する
2 に答える
4774 参照

c# - C# のどの三項演算子が最も人気があり、主に使用されていますか?

C# のどの三項演算子が最も人気があり、主に使用されていますか?

0 投票する
3 に答える
735 参照

javascript - これらのステートメントを JavaScript で簡潔かつ確実に記述する方法は何ですか?

親ドキュメントのオブジェクト リテラルに設定されているいくつかの変数を使用する <iframe> があります。これらの変数はオプションです。それらが設定されている場合は、それらの値を使用して、より簡潔なグローバル変数に割り当てます。そうでない場合は、関数 error() を呼び出します。

まず、この三項演算子文は自分のやりたいことに有効で有効でしょうか?ここに潜在的なトラップはありますか?

第二に、そのステートメントを書くためのより簡潔な方法はありますか?

これらの変数のいくつかはオプションですが、定義されている場合、許容値の範囲があります。これを処理するための堅牢な方法は何ですか? このようなもの?

基本的に未定義や範囲外の場合はデフォルト値を使いたい。

次のような条件文だけに頼ることはできますか?

または、このように未定義かどうかを確認する必要がありますか?

より堅牢で簡潔なものはありますか?アドバイスをありがとう。

0 投票する
4 に答える
2038 参照

c# - 2バイト値でC#の三項演算子を使用するには?

次のように、2 バイトで C# の三項演算子を使用する方法はないようです。

そのコードは現在、「ソース タイプ 'int' をターゲット タイプ 'byte' に変換できません」でコンパイルに失敗します。これは、コンパイラが数値を整数として扱うためです。どうやら 0 と 1 がバイトであることを示すサフィックスが指定されていないため、唯一の回避策は (a) 結果をバイトにキャストするか、(b) if-else コントロールを使用することです。

何かご意見は?

0 投票する
1 に答える
774 参照

entity - エンティティ関係モデル: 三項関係

私は、本のこのステートメントが間違っている理由を理解しようとしています。特定の種類の関係には当てはまらないということですか?? したがって、あるタイプの科目のコースに出席している学生の例があるとします。エンティティは、学生、出席、コース、科目です。学生は部屋に出席します。また、学生は科目に出席することができます。この例は、ステートメントに適用されますか?

御時間ありがとうございます。

0 投票する
2 に答える
19964 参照

c - ?:1つの式を空のままにした場合の3値条件演算子の動作

試行錯誤しながら数字を「推測」しようとするコンソールアプリケーションを書いていたのですが、うまくいきましたが、ぼんやりと書いた部分が気になりました。

コードは次のとおりです。

より具体的には、私を混乱させた部分は

以前は、 0(またはfalse)が返さ((100/(i<<=1))?:1)れた場合、式全体が1と評価されることを確認していました。条件の一部を残して、真に空の場合に機能するようにしました。正しく機能しているように見えますが、残すリスクはありますか。条件付きの空のその部分?100/(i<<=1)((100/(i<<=1))?:***1***)((100/(i<<=1))? _this space_ :1)

0 投票する
5 に答える
45517 参照

c++ - 三項演算子C ++のreturnステートメント

次のように三項演算子を使用して絶対関数を記述しました

次のエラー メッセージが表示されます

こう書くと

エラーは発生しません。2つの違いは何ですか?