問題タブ [optional-chaining]

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 投票する
1 に答える
105 参照

swift - オプションのチェーンを使用するように変更すると、強制的なアンラップが迅速に置き換えられたときの違いは何ですか?

オブジェクトインスタンスの関数を呼び出すと、オブジェクトが存在しない可能性があります(オプションのタイプ)。オブジェクト名の後ろに感嘆符を付ける代わりに、オブジェクト名の後ろに常に疑問符を付けることができ、クラッシュしないようです。

強制的なアンラップを使用する代わりに、オプションのチェーンを使用するようにいつでも変更でき、結果は同じですか? はいの場合、違いは何ですか?

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

ios - オプションチェーンのネガを取得する

許されません(表現が悪い)

Optional Chain 式の否定を 1 行で確認することはできますか?

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

swift2.2 - 「!」とは と '?' Swift で使用されるマーク

Objective-CからSwiftプログラミングに変更したとき、「 !」(感嘆符) と「 」(疑問符) が、呼び出しなどの?直後に置かなければならないことがよくあります。これらの記号は何に使用されますか?それらを使用しませんでしたか?propertymethod

ウェブで徹底的な答えを探しましたが、何も見つかりませんでした。そのため、誰かがその明確な答えを探している場合に備えて、ここに私の答えを載せることにしました.

また、私の回答の下に、私のものに似た質問へのリンクを含めました。ここでは、これらのマーク (「!」と「?」など) を使用する方法と場所に関する詳細な説明を見つけることができます。私の質問と私の回答は、リンクの同様の質問よりも基本的なレベルで説明しています。

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

xcode - force-unwrapping プロパティを使用せずに印刷しても、Swift で実行時エラーが発生しない

以下のコードがあり、正常に動作しますが、変数に値があり、その値を に引数として渡すときに強制ラッピングを使用していないため、行print(john.residence!.numberOfRooms)がクラッシュすることを期待していました。これが実行時エラーをトリガーせず、代わりに安全に印刷されない理由を誰でも説明できますか?numberOfRoomsnilprint()nil

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

swift - オプションのチェーンの dynamicType が代入と同じではありません

オプションの連鎖は、常にオプションの値を返します。

オプションの連鎖を nil 値で呼び出すことができるという事実を反映するために、オプションの連鎖呼び出しの結果は、クエリしているプロパティ、メソッド、または添え字が非オプションの値を返す場合でも、常にオプションの値になります。

Swift プログラミング言語

遊び場でタイプがオプションではないのはなぜですか?

しかし、次のコードは

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

swift - オプションのチェーンを実行するとエラーが発生するのはなぜですか?

A:オプションの連鎖をまだ行っていないのでしょうか? テキストに値がある場合にのみ行が機能し、そうでない場合は正常に失敗しますか? それでも、次のようになります。

オプションの型「文字列?」の値 開封されていません。「!」を使用するつもりでしたか? また '?'?

B: 上記のコンパイラ エラーが発生した場合でも、ラップを解除しますが、C のようにしたいという点で満足していません。私が理解しているように、?私は txtField を!アンラップし、テキストをアンラップしましたが、なぜまだ混乱していますか?うまくいきません

Cは機能するのにBが機能しないのはなぜですか? ライン C よりもクリーンな方法はありませんか? ライン C は非常に魅力的ではないように見えます。