Effect-TS は、Options のコレクションを操作する効率的な方法を提供し、None 以外の値に対してのみ操作を実行できるようにします。そのような操作の 1 つがフォールディングです。フォールディングでは、値が 1 つの結果に結合されます。この記事では、None 以外の値に削減関数を適用することで、Options の反復可能値を削減する O.reduceCompact 関数について説明します。
O.reduceCompact 関数は、Options の反復可能値を受け取り、None 以外の値に削減関数を適用することでそれらを 1 つの値に削減します。オプションが None の場合、リダクションでは無視されます。
function folding_ex01() { const options = [O.some(1), O.none(), O.some(2), O.none(), O.some(3)]; // Create an iterable of Options const sum = (acc: number, value: number) => acc + value; console.log(pipe(options, O.reduceCompact(0, sum))); // Output: 6 (sums all non-None values: 1 + 2 + 3) }
この関数は、オプションの反復可能値から値を集計する必要がある場合に便利で、None 以外の値のみが考慮されるようにします。
Effect-TS で O.reduceCompact を使用したフォールディング オプションは、None 値をスキップしながら値を集計する強力な方法を提供します。これにより、削減プロセスでは意味のある値のみが考慮されるため、オプションのデータを安全に組み合わせるための効果的なツールになります。この関数を利用すると、ロジック内で None 値を明示的に処理する必要がなく、オプションのコレクションをクリーンかつ効率的に処理できます。
以上がEffect-TS の折りたたみオプション: 実践ガイドの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。