問題タブ [guard-statement]

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 に答える
200 参照

swift2 - Swift で無効な instantiateViewControllerWithIdentifier を防ぐ方法

storyboard.instantiateViewControllerWithIdentifierSwift では、有効でない識別子の呼び出しを防ぐにはどうすればよいですか?

SO で見たほとんどのソリューションは、Objective-C で try...catch を使用しますが、instantiateViewControllerWithIdentifierスローしないため、ソリューションは Swift では機能しません。

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

swift2 - Swift ガード ステートメントの使用法

guard迅速なステートメントの理解に応じて、次のことを行っています。

理解したいのは、guardステートメントで変数を作成し、関数の残りの部分でアクセスできるかということです。または、ガードステートメントはすぐに例外を返すかスローすることを意図していますか?

guardまたは、ステートメントの使用法を完全に誤解していますか?

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

string - ガード Haskell の do ステートメントから値を返す

文字列のリスト内の文字列で文字が既に使用されているかどうかを確認しようとしています。はいの場合 - 比較する次の文字を選択します。「いいえ」の場合 - このレターを返送し、最初のリストを更新します。

私が使用しているリストをチェックインするには:

しかし、それは私にエラーを与えます:

タイプ '[Char]' と 'Char' を一致させることができませんでした
予期されるタイプ: [String] -> [Char] -> Char
実際のタイプ: [String] -> [Char] -> [Char]
' の stmt 内do' ブロック: sc を更新

私の更新機能には次の宣言があります:

ガードで2つのアクションを実行する正しい方法はありますotherwiseか? cと更新されたs の両方をパラメーターとして取る別の再帰関数で使用するには、cを返す必要があります。Char [String]

リストを更新せずにcのみを返すこの関数を使用すると、エラーは発生しません。

どんなヒントでも大歓迎です。

更新:私の次の機能は:

そして更新のために私が試した:

問題は、後で更新の結果である which をc[String] (チェックの結果)と一緒に別の関数に使用する必要があることです。そのため、チェックを実行した後、値を返し、それでリストを更新する必要があります。Char

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

swift - nil チェックを置き換えるガード ステートメントの誤用

Swift (objc から来ている) に慣れるために、本当に単純なことをしています。guardステートメントとステートメントを使用して、リンクされたリストで目的のノードを返したいと考えていますswitchguard私の句が巨大であるため、明らかにステートメントを誤用していelseます(switchステートメントが保持されている場所です)。おそらく私はswitch声明を必要としないかもしれませんが、それは物事を少し整理するだけです.

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

ステートメントに置き換えられguardます(ただし、ガード本体が失敗しない可能性があるというコンパイラエラーが発生します)-関数の戻り値の型が<T>(任意の型)であるため、問題は何を返すかです。

目的のインデックスが範囲外であることを示すprintステートメントをステートメントの外側に追加したいのですが、 type の関数の最後に何かを返す必要もあります。問題は、and switch ステートメントの外では、返すものが何もないことです。guardTguard

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

swift - ガードステートメントの矛盾

// ガード ステートメントで let 最初に bool チェックを実行すると、コンパイル エラーが発生します

// 最初に bool チェックを行い、次に let を実行します

上記の 2 つのステートメントは、私には同等に思えます。最初のケースで機能しないのはなぜですか?

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

swift2 - 文字列のSwift 2オプションガード

私はswift 2.0の問題を扱っています

API から json ファイルを取得し、そこからいくつかの文字列をアンラップしようとしています。

ときどき、この json は会場の通りの名前を含む文字列を与えてくれますが、そうでないこともあります。だから私がこれを試しているとき

nil と言って常にアプリがクラッシュします。コメントすると、アプリは完璧に動作しますが、通りが表示されません。問題なく文字列をアンラップする方法のアイデアはありますかnil??

このコードを試した場合

しかし、それも失敗しました。

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

swift - ガードレット エラー: 条件付きバインドの初期化子には、「文字列」ではなくオプションの型が必要です

ガードレットの使用中に致命的なエラーが発生しました。エラーは次のとおりです。

条件付きバインディングの初期化子には、「文字列」ではなくオプションの型が必要です

私が使用した私のコードの下: