パイプライン演算子 (|>)

実験的なパイプライン演算子 |> (現在はステージ 1 です) は、式の値を関数に接続します。これによって、読みやすい方法で一連の関数呼び出しを作成することができます。結果的に、単一の引数を用いた関数呼び出しの糖衣構文となり、次のように書くことができます。

let url = "%21" |> decodeURI;

これと等価な従来の構文は次のようになります。

let url = decodeURI("%21");

構文

expression |> function

指定された expression の値が function に、単一の引数として渡されます。

引数

expression
任意の式です。
function
任意の関数です。

関数呼び出しの連結

パイプライン演算子は、複数の関数の連結を読みやすくすることができます。

const double = (n) => n * 2;
const increment = (n) => n + 1;

// パイプライン演算子なし
double(increment(double(double(5)))); // 42

// パイプライン演算子あり
5 |> double |> double |> increment |> double; // 42

仕様

仕様書
Pipeline operator
Pipeline operator の定義

ブラウザー実装状況

Update compatibility data on GitHub
デスクトップモバイルサーバー
ChromeEdgeFirefoxInternet ExplorerOperaSafariAndroid webviewAndroid 版 ChromeAndroid 版 FirefoxAndroid 版 OperaiOSのSafariSamsung InternetNode.js
Pipeline operator (|>)
実験的
Chrome 未対応 なしEdge 未対応 なしFirefox 未対応 なしIE 未対応 なしOpera 未対応 なしSafari 未対応 なしWebView Android 未対応 なしChrome Android 未対応 なしFirefox Android 未対応 なしOpera Android 未対応 なしSafari iOS 未対応 なしSamsung Internet Android 未対応 なしnodejs 未対応 なし

凡例

未対応  
未対応
実験的。動作が変更される可能性があります。
実験的。動作が変更される可能性があります。

関連情報