問題タブ [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 投票する
5 に答える
5338 参照

java - 三項演算子

次のコードの出力が 9 ではなく 9.0 になるのはなぜですか? 三項演算子が if-else 分岐の短縮形に過ぎない場合、Java コンパイラが int を double に昇格させるのはなぜですか?

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

checkbox - HTMLチェックボックスのチェック/チェックでの三項演算

私の JavaScript は、次のようにブール値に基づいて、フィールドの 1 つをチェックボックスとして動的 HTML を吐き出します。

ブール値が false であっても、私のチェックボックスは常にチェックを返します。三項演算でそれを行うための提案はありますか?

また、チェックボックスの各行にIDを付けるのは難しいことに気付きました。私の関数が現在どのように見えるかは次のとおりです。

function fnBuildWebSiteClipHtml(name, url, id, allow_removal, use_full_screen) {

}

allow_removal をチェックする 8 行目で、use_full_screen をチェックして次の行にチェックボックスを追加しようとしています。それに対する提案は大歓迎です。

すでに投稿された回答に感謝しますが、この状況でそれをどのように適合させるかわかりません。

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

php - PHP の短縮 IF ステートメント

以下が可能かどうか疑問に思っています。下に書いたif文を一行(三項)にしたい。

cURL の配列で 3 進数 (省略形の php コード) を使用したいと考えています。

フォームデータの例:

If ステートメント:

配列の例:

可能であれば何かアイデアはありますか?

敬具 アレックス

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

php - 他にない連結内のPHP三項?

2 つの変数が同じかどうかを確認し、同じ場合は文字列をエコーし​​ます。これは連結内で可能ですか? そして、別の関数を作成せずにそれを行うには?

例えば

$var = 'here is the first part and '. ( $foo == $bar ) ? "the optional middle part" .' and the rest of the string.'

編集

注、 .なしでそれを行う方法があるかどうかを調べてい: ''ます。よろしければ「二項演算子」。

0 投票する
0 に答える
401 参照

diagram - 三元図 (C++ および C#) のユーザー フレンドリーなインターフェイス

ユーザーフレンドリーなインターフェイスまたはコードを公開する方法を知っている人はいますか? 三元図をプロットするためのインターフェイスを開発しました。同じことができるソフトウェアがあることは知っていますが、これを使用すると、ユーザーは三元図の特定のゾーンを選択してデータをプロットできます (たとえば、この機能は石油工学で必要です)。Delaunay 三角形分割、ボロニ線図、メッシング、およびカラーマッピング用の MATLAB、C++、C# のコードもあります。多分それらは他の人にとって役立つと思います。作品の写真をアップロードできればいいのですが、少なくとも 10 の評判が必要です。

ありがとう、

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

php - PHPでIFを論理式に置き換える

これに似た構造に出くわしたとき、私はいくつかの古いコードをリファクタリングしていました:

奇妙に思えるかもしれませんが、これははるかに短いです

そして、いくらか読みやすくなります(少なくとも最初の驚きの後)

コードが短いからといって必ずしも読みやすいコードであるとは限りませんが、これは上記の2つの「標準的な」方法の中間にあると思います。

言い換えれば、代わりに

簡単に書くことができます

では、これがあまり使用されていない理由は何ですか?「車輪の再発明をしないで、もっと読みやすいif / elseを書いてください。本当に短くしたいのなら、それが三項演算子の目的です」のように簡単にできますか?

編集:上記のコードは元のコードからすぐに派生したものであり、「短絡」コードの使用例にすぎないことに注意してください。可能であれば、コードの改善を提案することは控えてください。それは質問の望ましい結果ではなかったからです。

例2

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

c# - 三項ステートメントを使用してデリゲートに拡張メソッドを割り当てる

仮定

インターフェースがあり、そのインターフェースに対して次の拡張メソッドが定義されていると仮定しましょう (それらの実装は重要ではありません) 。

問題

IPersontypeと returnの 2 つのパラメーターを受け入れるという点で、両方の拡張メソッドが基本的に同じであることがわかっていますbool。ここで、拡張メソッドの 1 つを、Func<IPerson, IPerson, bool>使用できる型のデリゲートに割り当てたいとします。

ただし、ifステートメントを省略形にすると、次のようになります。

コンパイル エラー メッセージが表示されます。

「method.group」と「method.group」の間に暗黙的な変換がないため、条件式のタイプを判別できません

質問

なぜこのエラーが発生するのですか? デリゲートが拡張メソッドであるという性質によるものですか。それとも、簡単なifステートメントが結果の型をどのように決定するかによるものですか? それとも全然違うものですか?

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

java - 代入なしのJava三項

割り当てを行わずに Java 三項演算を行う方法や、割り当てを偽造する方法はありますか?

一連の if/then/else を実行するときの簡潔な 3 項コードの外観が気に入っています。

ブール代数ステートメントに基づいて、2 つの void 関数のいずれかを呼び出せるようにしたいと考えています。

何かのようなもの:

(bool1 && bool2) ? voidFunc1() : voidFunc2();

私の関数は return 型なvoidので、割り当てでこれを偽造して機能させる方法があれば、それで問題ありません...その方法を知りたいのですが:)

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

ruby - Ruby三項演算子構造

適当ですが、

ではありません。誰かが私にこれがなぜなのか説明できますか?

サイドノート:

同様に正常に動作します。

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

java - 三項演算子を認識して変換し、if文を修正する

以下のコードを理解しようとしていますが、以下の三項演算子に問題があります。

これは正しいです?

上記のステートメントは、次のように表すことができます。