原型 - 数组处理



Prototype 为所有原生 JavaScript 数组扩展了相当多的强大方法。

这是通过两种方式实现的:

  • 它混合了 Enumerable 模块,该模块已经引入了大量方法。

  • 它还添加了一些额外的功能,在本节中进行了介绍。

使用迭代器

Prototype 提供的一个重要支持是,你可以在 JavaScript 中使用类似 Java 的迭代器。请看下面的区别:

传统的 **for** 循环编写方式:

for (var index = 0; index < myArray.length; ++index) {
   var item = myArray[index];
   // Your code working on item here...
}

如果你使用 Prototype,则可以将上述代码替换为:

myArray.each(function(item) {
   // Your code working on item here...
});

以下是所有函数的列表,以及处理数组的示例。

Prototype 数组方法

**注意** - 请确保你使用的是 1.6 版本的 prototype.js。

序号 方法及说明
1. clear()

清除数组(使其为空)。

2. clone()

返回数组的副本,原始数组保持不变。

3. compact()

返回数组的新版本,不包含任何 null/undefined 值。

4. each()

按升序数值索引顺序迭代数组。

5. first()

返回数组中的第一项,如果数组为空则返回 undefined。

6. flatten()

返回数组的“扁平化”(一维)版本。

7. from()

克隆现有数组或从类似数组的集合创建新数组。

8. indexOf()

返回参数在数组中第一次出现的索引。

9. inspect()

返回数组的用于调试的字符串表示。

10. last()

返回数组中的最后一项,如果数组为空则返回 undefined。

11. reduce()

减少数组:单元素数组转换为其唯一元素,而多元素数组则保持不变。

12. reverse()

返回数组的反转版本。默认情况下,直接反转原始数组。如果 inline 设置为 false,则使用原始数组的副本。

13. size()

返回数组的大小。

14. toArray()

这只是从 Enumerable 混合而来的 toArray 的局部优化。

15. toJSON()

返回一个 JSON 字符串。

16. uniq()

生成数组的无重复版本。如果未找到重复项,则返回原始数组。

17. without()

生成不包含任何指定值的新数组版本。

广告