Programação
 › Algoritmo  › C/C++  › Java
Web
 › HTML/XHTML  › JavaScript  › PHP
Sistema Operacional
 › Comandos de DOS  › Windows  › Linux  › Mac/BSD
Office
 › Word / Writer  › Excel / Calc
Áreas do Site
 › Download  › Fórum  › Blog
Recomendamos
Computadores e Informática em Lisboa
TI Expert » Programação » Web » JavaScript » Organizar Arrays

Organizar Arrays

Depois de vermos como inserir elementos em um array e como remover elementos de um array, agora veremos como inverter e organizar um array.

Reverse

O método reverse do objeto array serve para inverter a ordem dos elementos de um array. Dessa forma podemos usar apenas uma forma de organização e depois inverter o array para conseguir a ordem desejada.

<SCRIPT LANGUAGE="JavaScript" TYPE="text/javascript">
var vetor = Array (1, 2, 3, 4, 5);
document.write ("Array inicial: " + vetor);
document.write ("<BR>Array invetido: " + vetor.reverse());
</SCRIPT>

Isso inverterá o array resultando em:

Sort

O método sort é o que realmente faz a organização do array. Porém, sort apenas organiza o array de forma alfabética, se quisermos organizar o array de forma numérica devemos criar uma função para indicar como parâmetro de sort.

Abaixo está um exemplo de uma organização simples feita em ordem alfabética.

<SCRIPT="JavaScript" TYPE="text/javascript">
var vetor = Array ("João", "Maria", "José", "Pedro");
document.write (vetor.sort());
</SCRIPT>

Veja que vetor é organizado corretamente de forma alfabética.

Agora, podemos perceber que o resultado da organização de números não é dada de forma satisfatória.

<SCRIPT LANGUAGE="JavaScript" TYPE="text/javascript">
var vetor = Array (3000, 20, 100, 4);
document.write (vetor.sort());
</SCRIPT>

Para organizar um array numérico usando o método sort devemos criar uma função com dois parâmetros que retorne um valor negativo ou positivo. Esse valor, servirá como base para o método sort determinar qual índice do array virá primeiro.

Para organizar a variável vetor criaremos duas funções: uma chamada crescente e outra chamada decrescente.

<SCRIPT LANGUAGE="JavaScript" TYPE="text/javascript">
function crescente (index1, index2){
  return index1 - index2;
}

function decrescente (index1, index2){
  return index2 - index1;
}

var vetorOriginal = Array (3000, 20, 100, 4);
var vetorCrescente = vetorOriginal;   // copiando um vetor para o outro
var vetorDecrescente = vetorOriginal; // copiando um vetor para o outro
document.write ("Vetor em ordem crescente:<BR>");
document.write (vetorCrescente.sort(crescente));
document.write ("<BR>Vetor em ordem decrescente<BR>");
document.write (vetorDecrescente.sort(decrescente));
</SCRIPT>

O resultado é mostrado abaixo:

Creative Commons License
Autor: Denys William Xavier
Este artigo está sob Licença Creative Commons.

Faça o download da versão em PDF Indique nosso site Gostou?
Indique nosso site!
Este artigo foi
lido 17104 vezes
Bookmark e Compartilhe

Páginas Relacionadas

Enquete
O Google Chrome OS irá desbancar o Microsoft Windows 7?
» ProgramaçãoAlgorítmo | C/C++ | Java

» WebHTML/XHTML | JavaScript | PHP

» Sistema OperacionalComandos de DOS | Windows | Linux | Mac/BSD

» OfficeWord/Wirter | Excel/Calc

» Áreas do SiteDownloads | Fórum | Blog