常用工具函数 - Prototype JavaScript 框架

Xunxin Prototype API

常用工具函数

Prototype 提供了一系列“便利”的函数,除 $ 外,大都是一些 Prototype 函数的简称。$ 使用一些附加的功能封装了 DOM 节点。

这些工具函数提供的功能几乎在所有的 Javascript 脚本中都会被用到,所以它们的命名必须简捷,在 Prototype中,它们遵循 $ 的命名约束。

毫无疑问,$() 是最常用的工具函数,事实上,在 Prototype 代码中,$ 函数无处不在,它接受一个或多个元素 ID 或实际的 DOM 元素作为参数。它还提供了许多有用的功能,而不仅只是对 document.getElementById 进行简单封装。具体的使用方法请参见文档。

这些工具函数是使用 Prototype 进行 Javascript 高效编码的基石之一,值得我们花费一些时间来学习它。

函数列表

$

$(id | element) -> HTMLElement Or $((id | element)...) -> [HTMLElement...]

如果提供一个字符串参数,则返回 ID 为指定字符串的元素。如果传入参数为 DOM 元素,则返回该 DOM 元素。可传入多个参数,参数的数目没有限制。该函数返回的所有元素都已经被 Prototype 进行了相应的 DOM 方法扩展。

$$

$$(cssRule...) -> [HTMLElement...]

接受一个或多个字符串参数,字符串参数必须符合 CSS 选择规则(CSS Selectors)。 返回匹配这些 CSS 选择规则的 DOM 元素数组。数组元素按照 document 中节点的顺序进行排序, 并且这些元素都进行了相应的 DOM 方法扩展。

$A

$A(iterable) -> actualArray

接受一个类似于数组的集合(具有数字索引),返回相应的 Array 对象。该函数是 Array.from 的简称。 但是在进行 Array 转换时,我们推荐使用 $A

$F

$F(element) -> value

返回一个表单控件的值,是 Form.Element.getValue 方法的简称,具体细节请参见 Form.Element.getValue

$H

$H([obj]) -> Hash

创建一个 Hash (映射或关联数组)。Hash 构造器的简便封装,你可以传入一个已有的对象(从本质上来说,JavaScript 的对象本身就是一个 hash),返回封装了该对象的 Hash。该函数是安全的,不会影响原有对象 (因为该函数内部复制了传入的对象)。

$R

$R(start, end[, exclusive = false]) -> ObjectRange

创建一个新的 ObjectRange 对象。ObjectRange 构造器的简便封装, 但是 $R 是推荐使用的名称。

$w

$w(String) -> Array

以空格作为分隔符拆分字符串,并返回一个数组。等同于 Ruby 的 %w{foo bar} 或 Perl 的 qw(foo bar)

Try.these

Try.these(Function...) -> firstOKResult

接收任意数目的函数作为参数,按照函数在参数中的顺序依次执行,若其中一个函数执行成功, 则返回该函数的执行结果,并中止后续函数的执行。若无成功执行的函数,则抛出异常。

document.getElementsByClassName
不推荐

document.getElementsByClassName(className[, element]) -> [HTMLElement...]

根据 className 指定的 CSS 类名返回(并扩展)匹配的 DOM 元素。 可选的参数 element 用于指定 CSS 类搜寻范围,将搜寻范围限制在该元素内。