Javascript/Objeto Array: diferenças entre revisões

Origem: Wikilivros, livros abertos por um mundo aberto.
[edição verificada][edição não verificada]
Conteúdo apagado Conteúdo adicionado
Guiwp (discussão | contribs)
Fusão com Javascript/Objetos
Torneira (discussão | contribs)
Sem resumo de edição
Linha 1: Linha 1:
== Definição ==
#REDIRECT [[Javascript/Objetos#Objeto Array]]

O ''objeto Array'' (matriz ou vetor) pode ser tanto criado implicitamente:

var m = [1, 2, 3, 4];

quanto explicitamente:
var m = new Array(1, 2, 3, 4);

Este objeto manipula uma coleção de outros objetos.

== Atributos ==
{| {{prettytable}}
! Nome !! Descrição
|-
| length || Quantidade de elementos que tem a matriz
|}

== Métodos ==
{| {{prettytable}}
|- style="background/#f9f9f9;"
! Nome !! Descrição
|-
| '''concat''' || Retorna uma nova matriz, concatenando a primeira matriz (original) com os valores ou matrizes dados como argumentos. Exemplo:
var m = ["sergio", "eduardo"];
var n = m.concat("rodrigues");
''n'' terá valor/["sergio", "eduardo", "rodrigues"]
|-
| '''join''' || Junta todos os elementos da matriz em uma string, colocando um separador entre os itens. Exemplo:
var m = ["sergio", "eduardo", "rodrigues"];
var n = m.join("+ ");
''n'' terá valor/"sergio+ eduardo+ rodrigues"
|-
| '''pop''' || Remove o último elemento da matriz, retornando o elemento removido. Exemplo:<br>
var m = ["sergio", "eduardo", "rodrigues"];
var n = m.pop();
''n'' terá valor/"rodrigues"; e ''m''/["sergio", "eduardo"]
|-
| '''push''' || Adiciona elementos ao final da matriz. O valor de retorno depende da versão do JavaScript/até a 1.2, o método retorna o último elemento adicionado; a partir da 1.3, retorna o novo tamanho da matriz. Exemplo:
var m = ["sergio", "eduardo"];
var n = m.push("rodrigues");
''n'' terá valor/"rodrigues" (JS &lt; 1.3) ou 3 (JS ≥ 1.3) e m/["sergio", "eduardo", "rodrigues"]
|-
| '''reverse''' || Inverte a ordem dos elementos da matriz. Exemplo:
var m = ["sergio", "eduardo", "rodrigues"];
var n = m.reverse();
''n'' e ''m'' terão valor/["rodrigues", "eduardo", "sergio"]
|-
| '''shift''' || Remove o primeiro elemento da matriz, retornando o elemento removido. Exemplo:
var m = ["sergio", "eduardo", "rodrigues"];
var n = m.shift();
''n'' terá valor/"sergio"<br>
''m'' terá valor/["eduardo", "rodrigues"]
|-
| '''slice'''(''início'', ''fim'') ou<br>'''slice'''(''início'') || Retorna uma faixa da matriz, extraindo elementos a partir de ''início'' e até (mas não inclusive) ''fim''. Se ''fim'' for omitido, extrai-se até o fim da matriz. ''fim'' também pode ser negativo; -1 indica o último elemento (que '''não''' será extraído, nesse caso). Exemplo:
var m = ["a", "b", "c", "d", "e", "f", "g", "h"];
var n = m.slice(0, 2);
''n'' terá valor/["a", "b"]
|-
| '''splice'''(''início'')<br>
'''splice'''(''início'', ''número'')<br>
'''splice'''(''início'', ''número'', ''itens a inserir''...)
| Adiciona e/ou remove faixas dentro de uma matriz. O primeiro argumento é o índice a partir do qual devem ser feitas as mudanças ? remover "''número''" itens e adicionar os "''itens a inserir''". Exemplo:
var m = ["a", "b", "c", "d", "e", "f", "g", "h"];
var n = m.splice(0, 2);
''n'' terá valor/["a", "b"]<br>
''m'' terá valor/["c", "d", "e", "f", "g", "h"]
|-
| '''sort'''()<br>
'''sort'''(''função_de_comparação''(''a'', ''b''))
| Ordena a matriz, opcionalmente com base em uma função de comparação personalizada. Exemplo:
var m = ["sergio","eduardo","rodrigues"];
var n = m.sort()
''n'' terá valor/["eduardo","rodrigues","sergio"]

No caso de passar a função de comparação, ela deve retornar um valor menor que zero se ''a'' &lt; ''b'' (''a'' deve ser classificado antes de ''b''), 0 se ''a'' = ''b'' e maior que zero se ''a'' &gt; ''b''.
|-
| '''unshift'''(''item'', ...) || Adiciona um ou mais elementos ao inicio da matriz. Exemplo:
var m = ["sergio", "eduardo", "rodrigues"];
m.unshift("sr");
''m'' terá valor/["sr", "sergio", "eduardo", "rodrigues"]
|}

----
<div align="right">[[Javascript/Objetos Predefinidos|←]]&nbsp;[[Javascript/Objetos Predefinidos|↑]]&nbsp;[[Javascript/Objeto Date|→]]</div>

{{AutoCat}}

Revisão das 17h14min de 27 de dezembro de 2013

Definição

O objeto Array (matriz ou vetor) pode ser tanto criado implicitamente:

var m = [1, 2, 3, 4];

quanto explicitamente:

var m = new Array(1, 2, 3, 4);

Este objeto manipula uma coleção de outros objetos.

Atributos

Nome Descrição
length Quantidade de elementos que tem a matriz

Métodos

Nome Descrição
concat Retorna uma nova matriz, concatenando a primeira matriz (original) com os valores ou matrizes dados como argumentos. Exemplo:
var m = ["sergio", "eduardo"];
var n = m.concat("rodrigues");

n terá valor/["sergio", "eduardo", "rodrigues"]

join Junta todos os elementos da matriz em uma string, colocando um separador entre os itens. Exemplo:
var m = ["sergio", "eduardo", "rodrigues"];
var n = m.join("+ ");

n terá valor/"sergio+ eduardo+ rodrigues"

pop Remove o último elemento da matriz, retornando o elemento removido. Exemplo:
var m = ["sergio", "eduardo", "rodrigues"];
var n = m.pop();

n terá valor/"rodrigues"; e m/["sergio", "eduardo"]

push Adiciona elementos ao final da matriz. O valor de retorno depende da versão do JavaScript/até a 1.2, o método retorna o último elemento adicionado; a partir da 1.3, retorna o novo tamanho da matriz. Exemplo:
var m = ["sergio", "eduardo"];
var n = m.push("rodrigues");

n terá valor/"rodrigues" (JS < 1.3) ou 3 (JS ≥ 1.3) e m/["sergio", "eduardo", "rodrigues"]

reverse Inverte a ordem dos elementos da matriz. Exemplo:
var m = ["sergio", "eduardo", "rodrigues"];
var n = m.reverse();

n e m terão valor/["rodrigues", "eduardo", "sergio"]

shift Remove o primeiro elemento da matriz, retornando o elemento removido. Exemplo:
var m = ["sergio", "eduardo", "rodrigues"];
var n = m.shift();

n terá valor/"sergio"
m terá valor/["eduardo", "rodrigues"]

slice(início, fim) ou
slice(início)
Retorna uma faixa da matriz, extraindo elementos a partir de início e até (mas não inclusive) fim. Se fim for omitido, extrai-se até o fim da matriz. fim também pode ser negativo; -1 indica o último elemento (que não será extraído, nesse caso). Exemplo:
var m = ["a", "b", "c", "d", "e", "f", "g", "h"];
var n = m.slice(0, 2);

n terá valor/["a", "b"]

splice(início)

splice(início, número)
splice(início, número, itens a inserir...)

Adiciona e/ou remove faixas dentro de uma matriz. O primeiro argumento é o índice a partir do qual devem ser feitas as mudanças ? remover "número" itens e adicionar os "itens a inserir". Exemplo:
var m = ["a", "b", "c", "d", "e", "f", "g", "h"];
var n = m.splice(0, 2);

n terá valor/["a", "b"]
m terá valor/["c", "d", "e", "f", "g", "h"]

sort()

sort(função_de_comparação(a, b))

Ordena a matriz, opcionalmente com base em uma função de comparação personalizada. Exemplo:
var m = ["sergio","eduardo","rodrigues"];
var n = m.sort()

n terá valor/["eduardo","rodrigues","sergio"]

No caso de passar a função de comparação, ela deve retornar um valor menor que zero se a < b (a deve ser classificado antes de b), 0 se a = b e maior que zero se a > b.

unshift(item, ...) Adiciona um ou mais elementos ao inicio da matriz. Exemplo:
var m = ["sergio", "eduardo", "rodrigues"];
m.unshift("sr");

m terá valor/["sr", "sergio", "eduardo", "rodrigues"]