Usando a Prototype – passo 3 – arrays e a classe Enumerable

Continuando com os posts sobre usos da Prototype, vamos ver nesse momento a classe Enumerable.
Quando você incorpora a biblioteca no seu projeto, automaticamente é como se a classe Array do javascript passasse a extender Enumerable. Com isso, novos métodos para manipulação são incorporados, deixando muito mais simples a manipulação de arrays.

Vamos ver alguns usos!

Percorrer um array
Da forma tradicional, se usa a diretiva for()
var arr = ["1", "2", "3"];

for(var i=0; i<arr.length; i++) {
alert(arr[i]);
}

Com a classe Enumerable, podemos usar o método each

var arr = ["1", "2", "3"];
arr.each(function(item) {
alert(item);
});

Verificar se todos os valores de um array são maiores (ou menores) do que um determinado valor
Podemos usar o método all() – esse método percorre todos os itens de um array e retorna false caso encontre algum valor false -, passando uma função como parâmetro que retorna true ou false dependendo da condição.

[9, 10, 15].all(function(n) { return n<12; })
//retorna false, pois 15 é maior do que 12

Verificar se um objeto está presente no array
Usamos o método include(object), passando object como parâmetro. Ele varrerá item por item do array e retornará true caso encontre um objeto igual

[´hello´, ´world´].include(´HELLO´);
//retorna false
[´hello´, ´world´].include(´hello´);
//retorna true

Certamente, o método mais simples de usar é o primeiro – até porque interar em cima de arrays é algo comum na vida prática de quem programa em javascript. Mas fica a dica de dar uma olhada nessa classe, pois muito trabalho por nada pode ser evitado se algum dia você se deparar com alguma manipulação mais complexa de arrays.
Inclusive, vale a pena olhar os exemplos de todos os métodos, pois eles são bem explicados e abrangentes!

 

API da Classe Enumerable: http://www.prototypejs.org/api/enumerable

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *