Перевод не завершен. Пожалуйста, помогите перевести эту статью с английского.

Это экспериментальная технология
Так как спецификация этой технологии ещё не стабилизировалась, смотрите таблицу совместимости по поводу использования в различных браузерах. Также заметьте, что синтаксис и поведение экспериментальной технологии может измениться в будущих версиях браузеров, вслед за изменениями спецификации.

Экспериментальный конвейерный оператор |> (в настоящее время на этапе 1) позволяет создавать читаемые цепочки вызовов функций. В основном, конвейерный оператор предоставляет возможность вызова функции с одним аргументом, и позволяет написать

'%21' |> decodeURI вместо decodeURI('%21').

Синтаксис

expression |> function

Примеры

Цепочки вызовов функций

Конвейерный оператор позволяет улучшить читаемость кода, в случае когда встречается цепочка из нескольких функций.

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

// без конвейерного оператора
double(increment(double(double(5)))); // 42

// с конвейерным оператором
5 |> double |> double |> increment |> double; // 42

Спецификации

Спецификация Статус Comment
Pipeline operator draft Этап 1 Еще не включен в спецификацию ECMAScript.

Совместимость с браузерами

ВозможностьChromeEdgeFirefoxInternet ExplorerOperaSafari
Базовая поддержка Нет Нет581 Нет Нет Нет
ВозможностьAndroid webviewChrome for AndroidEdge mobileFirefox for AndroidOpera AndroidiOS SafariSamsung Internet
Базовая поддержка Нет Нет Нет581 Нет Нет Нет

1. From version 58: this feature is behind the --enable-pipeline-operator compile flag.

Смотрите также

Метки документа и участники

Внесли вклад в эту страницу: ALegostaeva
Обновлялась последний раз: ALegostaeva,