MDN wants to learn about developers like you: https://qsurvey.mozilla.com/s3/MDN-dev-survey

Esta tradução está incompleta. Por favor, ajude a traduzir este artigo.

Resumo

A propriedade Array.prototype representa o protótipo para o construtor Array.

Property attributes of Array.prototype
Writable no
Enumerable no
Configurable no

Descrição

Instâncias de Array herdam de Array.prototype. Como em todos os construtores, você pode mudar o  protótipo desse construtor para modificar todas as instâncias de Array.

Um fato pouco conhecido: O próprio Array.prototype é um Array

Array.isArray(Array.prototype); // true

Propriedades

Array.prototype.constructor
Especifica a função que cria um objeto do protótipo.
 
Array.prototype.length
Reflete o número de elementos em um array.

Métodos

Métodos modificadores

Esses métodos modificam o array:

Array.prototype.copyWithin()
Copia uma sequência de elementos do array dentro do array.
Array.prototype.fill()
Preenche todos os elementos de um array com um elemento estático, começando de um índice inicial até um índice final.
Array.prototype.pop()
Remove e retorna o último elemento de um array.
Array.prototype.push()
Adiciona um ou mais elementos ao fim de um array e retorna o novo comprimeiro do array.
Array.prototype.reverse()
Reverte a ordem dos elementos de um array - o primeiro vira o último e o último vira o primeiro.
Array.prototype.shift()
Remove o primeiro elemento de um array e o retorna.
Array.prototype.sort()
Ordena os elementos do array em questão e retorna o array.
Array.prototype.splice()
Adiciona e/ou remove elementos de um array.
Array.prototype.unshift()
Adiciona um ou mais elementos ao início de um array e retorna o novo comprimento do array.

Métodos de acesso

Esses métodos não modificam o array, mas sim retornam alguma representação dele.

Array.prototype.concat()
Retorna um novo array formado por esse array concatenado com outro(s) array(s) e/ou valores.
Array.prototype.contains()
Verifica se o array possui cer, retornandotrue ou false apropriadamente.
Array.prototype.join()
Retorna uma string com todos os elementos do array
Array.prototype.slice()
Retorna um novo array com uma parte do array sobre o qual o método foi chamado
Array.prototype.toSource()
Retorna um array literal representando o array especificado; você pode usar esse valor para criar um novo array. Esse método sobrescreve o método Object.prototype.toSource().
Array.prototype.toString()
Retonar uma string representando o array e seus elementos. Esse método sobrescreve o método Object.prototype.toString().
Array.prototype.toLocaleString()
Retonar uma string adequada ao idioma do usuário representando o array e seus elementos. Esse método sobrescreve o método Object.prototype.toLocaleString().
Array.prototype.indexOf()
Representa o índice da primeira ocorrência de um valor especificado no array, ou -1 se o valor não estiver incluso no array.
Array.prototype.lastIndexOf()
Representa o índice da última ocorrência de um valor especificado no array, ou -1 se o valor não estiver incluso no array

Métodos de iteração

Vários métodos tomam como funções de argumento para serem chamados de volta ao processar o array. Quando esses métodos são chamados, o `length` do array é amostrado e qualquer elemento adicionado além deste comprimento (length)  de dentro da função (callback) não é visitado. Outras alterações para o array (Definindo o valor de ou apagando um elemento) pode afetar os resultados da operação se o método visita o elemento alterado posteriormente. Enquanto o comportamento específico destes métodos nestes casos é bem definido, não se deve confiar nisso para não confundir os outros que possoam ler seu código. Em vez disso, deve-se copiar para um novo array para modificá-lo.

Array.prototype.forEach()
Chama a função para cada elemento no array.
Array.prototype.entries()
Retorna um novo objeto Array Iterator que contem o par chave/valor para cada índice no array.
Array.prototype.every()
Retorna true se todos elementos no array satisfizer a função de teste fornecida.
Array.prototype.some()
Retorna true se pelo menos um elemento no array satisfizer a função de teste fornecida.
Array.prototype.filter()
Cria um novo array com todos os elementos do array para qual a função de filtragem fornecida retorne true.
Array.prototype.find()
Retorna o valor encontrado no array, se um elemento no array satisfizer a funçào de teste fornecida ou  `undefined` se não for encontrado.
Array.prototype.findIndex()
Retorna o índice no array, se um elemento no array satisfizer a função de teste fornecida ou -1 se não for encontrado.
Array.prototype.keys()
Retorna um novo Array Iterator que contem a chave para cada índice no array.
Array.prototype.map()
Cria um novo array com os resultados da função fornecida chamada em cada elemento na array.
Array.prototype.reduce()
Aplica uma função contra um acumulador e cada valor do array (da esquerda para direita) para reduzi-los a um único valor.
Array.prototype.reduceRight()
Aplica uma função contra um acumulador e cada valor do array (da direita para esquerda) para reduzi-los a um único valor.
Array.prototype.values()
Retorna um novo objeto Array Iterator que contem os valores de cada índice no array.
Array.prototype[@@iterator]()
Retorna um novo objeto Array Iterator que contem os valores de cada índice no array.

Métodos genéricos

Vários métodos do objeto Array em Javascript foram feitos para serem aplicados genericamentes em todos os objetos que "pareçam" Arrays. Isso é, eles podem ser usados em qualquer objeto que possuam uma propriedade length (comprimento), e que possa ser usado a partir de propriedades numéricas (como índices no formato array[5]). Alguns métodos, como join, apenas lêem e as propriedades numéricas do objeto sobre o qual eles sãochamados. Outros, como reverse, exigem que as propriedades numéricas e length sejam mutáveis; sendo assim, esses métodos não podem ser chamados em objetos como String, que não permitem que nenhuma das duas propriedades sejam modificadas.

Especifiações

Especificação Situação Comentário
ECMAScript 1st Edition. Padrão Definição inicial
ECMAScript 5.1 (ECMA-262)
The definition of 'Array.prototype' in that specification.
Padrão  
ECMAScript 2015 (6th Edition, ECMA-262)
The definition of 'Array.prototype' in that specification.
Padrão  

Compatibilidade com Navegadore

Característica Chrome Firefox (Gecko) Internet Explorer Opera Safari
Basic support (Yes) (Yes) (Yes) (Yes) (Yes)
Característica Android Chrome for Android Firefox Mobile (Gecko) IE Mobile Opera Mobile Safari Mobile
Basic support (Yes) (Yes) (Yes) (Yes) (Yes) (Yes)

Veja também

Etiquetas do documento e colaboradores

 Colaboradores desta página: gutoribeiro, danielbastos
 Última atualização por: gutoribeiro,