作者热门文章
- xml - AJAX/Jquery XML 解析
- 具有多重继承的 XML 模式
- .net - 枚举序列化 Json 与 XML
- XML 简单类型、简单内容、复杂类型、复杂内容
许多语言都有一个操作符,允许您将一个操作的结果通过管道传递给另一个操作(例如 bash 中的 |
操作符,bash 中的 |>
操作符F#)。
在我看来,javascript 中方法链的常见用法的一大优点是它从上到下、从左到右读取:
var fooOddSquares = [1, 2, 3, 4, 5]
.filter(x => x % 2)
.map(x => "foo" + x * x)
.reduce(((acc, str, i) => acc[i + 1] = str; return acc), {});
// => {1: "foo1", 2: "foo9", 3: "foo25"}
与组合代码相比:
var something = func5(
func4(
func3(
func2(
func1(
somedata
)
)
)
)
);
从右到左,从下到上阅读。我意识到这可以通过函数组合来清理,但这不一定是重点。只是为了绝对清楚我在寻找什么:
var something = func1(somedata)
|> func2
|> func3
|> func4
//etc...
在 javascript 中对管道运算符进行谷歌搜索主要会找到有关按位或运算的信息。然而,通过一些挖掘,我能够挖掘出 this文章描述了运算符重载的肮脏版本,它可以实现我正在谈论的内容。我也发掘了this描述所述运算符的要点,并说“它已被提议用于 javascript”。
看看 ES 2016,我看到了求幂运算符和绑定(bind)运算符的提案。两者都有用,但不是我想要的。那么根据要点中的标题,有没有人真正为 javascript 提出这个建议?
最佳答案
2015 年 12 月,有人为 ES7 (ES2016) 提出了管道运算符。
关于javascript - 有没有人为 javascript 提议过 Pipe 运算符?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33550393/
我是一名优秀的程序员,十分优秀!