动机

在大多数主流的语言里,操作集合都是通过循环来进行的,每次抓取一个元素然后进行处理。在Ruby中,出现这样情况,不妨考虑使用闭包来替换循环操作。

手法

  • (find)找出循环的基本模式
  • (replace)把循环替换成适当的集合闭包方法
  • (test)测试

例子

在大多数常见情况下,有好集中有用的集合闭包方法,接下去,我来列出比较常见一种,刚开始时候可能会比较不习惯:

1
2
3
4
managers = []
employees.each do |e|
  managers << e if e.manager?
end

好的,接下去,我们可以替换成一下这种方式:

1
managers = employees.select{|e| e.manager?}

reject 方式会逆置过滤器测试。在这两种情况下,除非你使用破坏性的形式(select! or reject!),否则它们不会修改原来的集合。

1
2
3
4
managerOffices = []
employees.each do |e|
  managerOffices << e.office if e.manager?
end

换成这样方式:

1
managerOffices = employees.select{|e| e.manager?}.collect{|e| e.office}

定制我们自己的 JQuery 插件

### 介绍---一直来使用过的 JQuery 插件很多,也写过一些 JQuery 库的扩展。然而要真正了解插件如何扩展 JQuery 库需要对 JavaScript prototype 属性有一些基本的了解。虽然说不直接使用,但是 JavaScript prototype...… Continue reading

HTML INPUT TYPE

Published on July 26, 2015

HTTP 信封里的文档

Published on July 16, 2015