[解決済み] TypeScript foreach return [重複]の場合
2022-03-05 14:53:18
質問
foreachから戻るとforeachループを含む関数から戻れないようですが、これはC#の開発者の期待かもしれませんね。
ただ、もっときれいなやり方があるのではないかと思っています。
example() {
var forEachReturned;
this.items.forEach(item => {
if (true) {
forEachReturned = true;
return;
}
});
if (forEachReturned) {
return;
}
// Do stuff in case forEach has not returned
}
解決方法は?
よりクリーンな方法としては
.forEach
. TypeScriptや最新のJavaScriptを使用している場合は、ほとんど必要ありません。
example() {
for (let item of this.items) {
if (item === 3) {
return;
}
}
// Do stuff in case forEach has not returned
}
ループ内のコードに副作用がなく、各項目の条件をチェックするだけであれば、関数的なアプローチとして
.some
:
example() {
if (this.items.some(item => item === 3)) {
return;
}
// Do stuff in case we have not returned
}
関連
-
[解決済み】webpack-dev-serverにリモート接続すると、「Invalid Host header」というメッセージが表示されます。
-
[解決済み】npm install --legacy-peer-deps は具体的に何をするのですか?どんなときに推奨されるのか/どんな使用例が考えられるのか?
-
[解決済み] event.preventDefault() vs. return false
-
[解決済み] forEachループでasync/awaitを使用する
-
[解決済み] なぜ ++[[]][+[] +[+[]] は "10" という文字列を返すのでしょうか?
-
[解決済み] C#がforeachで変数を再利用するのは理由があるのか?
-
[解決済み] TypeScriptで文字列を数値に変換する方法とは?
-
[解決済み] TypeScript で `window` に新しいプロパティを明示的に設定するにはどうすればよいですか?
-
[解決済み] TypeScriptでの取得と設定
-
[解決済み】TypeScriptのインターフェースと型について
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】 Uncaught TypeError: data.push is not a function
-
[解決済み】Failed to load resource: net::ERR_FILE_NOT_FOUND loading json.js
-
[解決済み】Uncaught TypeError: nullのプロパティ'value'を読み取ることができない
-
[解決済み】ある要素が可視DOMに存在するかどうかを確認するにはどうすればいいですか?
-
[解決済み】Uncaught ReferenceError。Reactが定義されていない
-
[解決済み】WebSocket接続に失敗しました。WebSocket のハンドシェイク中にエラーが発生しました。予期しない応答コードです。400
-
[解決済み】Vueのテンプレートまたはレンダー関数が定義されていない 私はどちらも使っていないのですが?
-
[解決済み】Syntax error: JavaScriptの不正なreturnステートメント
-
[解決済み】Vueが定義されていない
-
[解決済み] Array.forEachでbreakを呼び出すようなショートサーキット