今天在写 Rakefile 的时候,突然想起之前看过 Ruby 的一个小技巧。 我们经常使用 |x,y| 的形式在 block 中对传参的数组进行解构,那么在类似 reduce 的方法中,也可以使用 () 强制对参数进行解构。 例如: [2] pry(main)> a = [['foo1','bar1'],['foo2','bar2']] => [["foo1", "bar1"], ["foo2", "bar2"]] [3] pry(main)> a.inject([]) {|a,(x,y)| a << x if y == 'bar1' ; a} => ["foo1"] ← Previous Post Next Post → CATALOG FEATURED TAGS 杂记 Mac Alfred Ruby Safari 运维 Linux script linux 读书笔记 Bash 科学上网 ShadowSocks 安全 工具 时间管理 ZSH iTerm Confluence apiDoc RubyMine FRIENDS