Tutorial de JS

JS HOME Introdução JS JS Para onde Saída JS Declarações JS Sintaxe JS Comentários JS Variáveis ​​JS JS Let JS Const Operadores JS JS Aritmética Atribuição de JS Tipos de dados JS Funções JS Objetos JS Eventos JS Strings JS Métodos de string JS Pesquisa de String JS Modelos de String JS Números JS Métodos de número JS Matrizes JS Métodos de matriz JS Classificação de matriz JS Iteração de matriz JS Const da matriz JS Datas JS Formatos de data JS Métodos de obtenção de data JS Métodos de conjunto de datas JS JS Math JS Aleatório JS Booleanos Comparações JS Condições JS Interruptor JS Circuito JS para JS Loop Para Entrada JS Loop Para De JS Loop Enquanto Quebra de JS Iteráveis ​​JS Conjuntos JS Mapas JS Tipo JS de Conversão de tipo JS JS bit a bit JS RegExp Erros JS Escopo JS Içamento JS Modo estrito JS JS esta palavra-chave Função de seta JS Classes JS JS JSON Depuração JS Guia de estilo JS Práticas recomendadas de JS Erros de JS Desempenho JS Palavras reservadas JS

Versões JS

Versões JS JS 2009 (ES5) JS 2015 (ES6) JS 2016 JS 2017 JS 2018 JS IE / Edge Histórico de JS

Objetos JS

Definições de objeto Propriedades do objeto Métodos de objeto Exibição de objetos Acessadores de objetos Construtores de objetos Protótipos de Objetos Iteráveis ​​de objeto Conjuntos de objetos Mapas de objetos Referência do objeto

Funções JS

Definições de função Parâmetros de função Invocação de função Chamada de Função Função Aplicar Fechamentos de Função

Classes JS

Introdução à aula Herança de classe Classe Estática

JS Assíncrono

Retornos de chamada JS JS Assíncrono Promessas JS JS Async/Aguardar

JS HTML DOM

Introdução ao DOM Métodos DOM Documento DOM Elementos DOM HTML DOM Formulários DOM CSS DOM Animações DOM Eventos DOM Ouvinte de eventos DOM Navegação DOM Nós DOM Coleções DOM Listas de nós DOM

BOM do navegador JS

Janela JS Tela JS Localização JS Histórico de JS Navegador JS Alerta pop-up JS Temporização JS Cookies JS

APIs da Web JS

Introdução à API da Web API de formulários da Web API de histórico da web API de armazenamento da Web API do trabalhador da Web API de busca da Web API de geolocalização da Web

JS AJAX

Introdução AJAX AJAX XML Http Solicitação AJAX Resposta AJAX Arquivo XML AJAX PHP AJAX ASP AJAX Banco de dados AJAX Aplicativos AJAX Exemplos AJAX

JS JSON

Introdução JSON Sintaxe JSON JSON x XML Tipos de dados JSON Análise JSON JSON Stringify Objetos JSON Matrizes JSON Servidor JSON JSON PHP HTML JSON JSON JSONP

JS x jQuery

Seletores jQuery HTML jQuery jQuery CSS jQuery DOM

Gráficos JS

Gráficos JS Tela JS JS Plotly JS Chart.js JS Google Chart JS D3.js

Exemplos JS

Exemplos JS JS HTML DOM Entrada HTML JS Objetos HTML JS Eventos HTML JS Navegador JS Editor JS Exercícios JS Teste JS Certificado JS

Referências JS

Objetos JavaScript Objetos HTML DOM


Iteração de matriz JavaScript


Os métodos de iteração do array operam em cada item do array.


Matriz JavaScript para Cada()

O forEach()método chama uma função (uma função de retorno de chamada) uma vez para cada elemento da matriz.

Exemplo

const numbers = [45, 4, 9, 16, 25];
let txt = "";
numbers.forEach(myFunction);

function myFunction(value, index, array) {
  txt += value + "<br>";
}

Observe que a função recebe 3 argumentos:

  • O valor do item
  • O índice de itens
  • A matriz em si

O exemplo acima usa apenas o parâmetro value. O exemplo pode ser reescrito para:

Exemplo

const numbers = [45, 4, 9, 16, 25];
let txt = "";
numbers.forEach(myFunction);

function myFunction(value) {
  txt += value + "<br>";
}

Mapa de matriz JavaScript()

O map()método cria um novo array executando uma função em cada elemento do array.

O map()método não executa a função para elementos do array sem valores.

O map()método não altera a matriz original.

Este exemplo multiplica cada valor de matriz por 2:

Exemplo

const numbers1 = [45, 4, 9, 16, 25];
const numbers2 = numbers1.map(myFunction);

function myFunction(value, index, array) {
  return value * 2;
}

Observe que a função recebe 3 argumentos:

  • O valor do item
  • O índice de itens
  • A matriz em si

Quando uma função de retorno de chamada usa apenas o parâmetro value, os parâmetros index e array podem ser omitidos:

Exemplo

const numbers1 = [45, 4, 9, 16, 25];
const numbers2 = numbers1.map(myFunction);

function myFunction(value) {
  return value * 2;
}


Filtro de matriz JavaScript()

O filter()método cria uma nova matriz com elementos de matriz que passam em um teste.

Este exemplo cria uma nova matriz de elementos com um valor maior que 18:

Exemplo

const numbers = [45, 4, 9, 16, 25];
const over18 = numbers.filter(myFunction);

function myFunction(value, index, array) {
  return value > 18;
}

Observe que a função recebe 3 argumentos:

  • O valor do item
  • O índice de itens
  • A matriz em si

No exemplo acima, a função callback não usa os parâmetros index e array, então eles podem ser omitidos:

Exemplo

const numbers = [45, 4, 9, 16, 25];
const over18 = numbers.filter(myFunction);

function myFunction(value) {
  return value > 18;
}

Redução de matriz JavaScript()

O reduce()método executa uma função em cada elemento da matriz para produzir (reduzi-lo a) um único valor.

O reduce()método funciona da esquerda para a direita na matriz. Veja também reduceRight().

O reduce()método não reduz a matriz original.

Este exemplo encontra a soma de todos os números em uma matriz:

Exemplo

const numbers = [45, 4, 9, 16, 25];
let sum = numbers.reduce(myFunction);

function myFunction(total, value, index, array) {
  return total + value;
}

Observe que a função recebe 4 argumentos:

  • O total (o valor inicial / valor retornado anteriormente)
  • O valor do item
  • O índice de itens
  • A matriz em si

O exemplo acima não usa os parâmetros index e array. Pode ser reescrito para:

Exemplo

const numbers = [45, 4, 9, 16, 25];
let sum = numbers.reduce(myFunction);

function myFunction(total, value) {
  return total + value;
}

O reduce()método pode aceitar um valor inicial:

Exemplo

const numbers = [45, 4, 9, 16, 25];
let sum = numbers.reduce(myFunction, 100);

function myFunction(total, value) {
  return total + value;
}

Matriz JavaScript reduceRight()

O reduceRight()método executa uma função em cada elemento da matriz para produzir (reduzi-lo a) um único valor.

O reduceRight()trabalho da direita para a esquerda na matriz. Veja também reduce().

O reduceRight()método não reduz a matriz original.

Este exemplo encontra a soma de todos os números em uma matriz:

Exemplo

const numbers = [45, 4, 9, 16, 25];
let sum = numbers1.reduceRight(myFunction);

function myFunction(total, value, index, array) {
  return total + value;
}

Observe que a função recebe 4 argumentos:

  • O total (o valor inicial / valor retornado anteriormente)
  • O valor do item
  • O índice de itens
  • A matriz em si

O exemplo acima não usa os parâmetros index e array. Pode ser reescrito para:

Exemplo

const numbers = [45, 4, 9, 16, 25];
let sum = numbers1.reduceRight(myFunction);

function myFunction(total, value) {
  return total + value;
}

Matriz JavaScript a cada()

O every()método verifica se todos os valores do array passam em um teste.

Este exemplo verifica se todos os valores da matriz são maiores que 18:

Exemplo

const numbers = [45, 4, 9, 16, 25];
let allOver18 = numbers.every(myFunction);

function myFunction(value, index, array) {
  return value > 18;
}

Observe que a função recebe 3 argumentos:

  • O valor do item
  • O índice de itens
  • A matriz em si

Quando uma função de retorno de chamada usa apenas o primeiro parâmetro (valor), os outros parâmetros podem ser omitidos:

Exemplo

const numbers = [45, 4, 9, 16, 25];
let allOver18 = numbers.every(myFunction);

function myFunction(value) {
  return value > 18;
}

Matriz JavaScript alguns()

O some()método verifica se alguns valores de array passam em um teste.

Este exemplo verifica se alguns valores de array são maiores que 18:

Exemplo

const numbers = [45, 4, 9, 16, 25];
let someOver18 = numbers.some(myFunction);

function myFunction(value, index, array) {
  return value > 18;
}

Observe que a função recebe 3 argumentos:

  • O valor do item
  • O índice de itens
  • A matriz em si

Matriz JavaScript indexOf()

O indexOf()método procura um valor de elemento em uma matriz e retorna sua posição.

Nota: O primeiro item tem a posição 0, o segundo item tem a posição 1 e assim por diante.

Exemplo

Pesquise uma matriz pelo item "Apple":

const fruits = ["Apple", "Orange", "Apple", "Mango"];
let position = fruits.indexOf("Apple") + 1;

Sintaxe

array.indexOf(item, start)
item Required. The item to search for.
start Optional. Where to start the search. Negative values will start at the given position counting from the end, and search to the end.

Array.indexOf() retorna -1 se o item não for encontrado.

Se o item estiver presente mais de uma vez, ele retornará a posição da primeira ocorrência.


Matriz JavaScript lastIndexOf()

Array.lastIndexOf()é igual a Array.indexOf(), mas retorna a posição da última ocorrência do elemento especificado.

Exemplo

Pesquise uma matriz pelo item "Apple":

const fruits = ["Apple", "Orange", "Apple", "Mango"];
let position = fruits.lastIndexOf("Apple") + 1;

Sintaxe

array.lastIndexOf(item, start)
item Required. The item to search for
start Optional. Where to start the search. Negative values will start at the given position counting from the end, and search to the beginning

JavaScript Array find()

O find()método retorna o valor do primeiro elemento da matriz que passa em uma função de teste.

Este exemplo encontra (retorna o valor de) o primeiro elemento maior que 18:

Exemplo

const numbers = [4, 9, 16, 25, 29];
let first = numbers.find(myFunction);

function myFunction(value, index, array) {
  return value > 18;
}

Observe que a função recebe 3 argumentos:

  • O valor do item
  • O índice de itens
  • A matriz em si

Suporte ao navegador

find()é um recurso ES6 (JavaScript 2015).

É suportado em todos os navegadores modernos:

Chrome Edge Firefox Safari Opera
Yes Yes Yes Yes Yes

find()não é compatível com o Internet Explorer.


Matriz JavaScript findIndex()

O findIndex()método retorna o índice do primeiro elemento da matriz que passa em uma função de teste.

Este exemplo encontra o índice do primeiro elemento que é maior que 18:

Exemplo

const numbers = [4, 9, 16, 25, 29];
let first = numbers.findIndex(myFunction);

function myFunction(value, index, array) {
  return value > 18;
}

Observe que a função recebe 3 argumentos:

  • O valor do item
  • O índice de itens
  • A matriz em si

Suporte ao navegador

findIndex()é um recurso ES6 (JavaScript 2015).

É suportado em todos os navegadores modernos:

Chrome Edge Firefox Safari Opera
Yes Yes Yes Yes Yes

findIndex()não é compatível com o Internet Explorer.




Matriz JavaScript.from()

O Array.from()método retorna um objeto Array de qualquer objeto com uma propriedade length ou qualquer objeto iterável.

Exemplo

Crie um Array a partir de uma String:

Array.from("ABCDEFG");

Suporte ao navegador

from()é um recurso ES6 (JavaScript 2015).

É suportado em todos os navegadores modernos:

Chrome Edge Firefox Safari Opera
Yes Yes Yes Yes Yes

from()não é compatível com o Internet Explorer.


Chaves de matriz JavaScript()

O Array.keys()método retorna um objeto Array Iterator com as chaves de um array.

Exemplo

Create an Array Iterator object, containing the keys of the array:

const fruits = ["Banana", "Orange", "Apple", "Mango"];
const keys = fruits.keys();

for (let x of keys) {
  text += x + "<br>";
}

Browser Support

keys() is an ES6 feature (JavaScript 2015).

It is supported in all modern browsers:

Chrome Edge Firefox Safari Opera
Yes Yes Yes Yes Yes

keys() is not supported in Internet Explorer.


JavaScript Array includes()

ECMAScript 2016 introduced Array.includes() to arrays. This allows us to check if an element is present in an array (including NaN, unlike indexOf).

Example

const fruits = ["Banana", "Orange", "Apple", "Mango"];

fruits.includes("Mango"); // is true

Syntax

array.includes(search-item)

Array.includes() allows to check for NaN values. Unlike Array.indexOf().

Array.includes() is not supported in Internet Explorer and Edge 12/13.

The first browser versions with full support are:


Browser Support

includes() is an ECMAScript 2016 feature.

It is supported in all modern browsers:

Chrome Edge Firefox Safari Opera
Yes Yes Yes Yes Yes

includes() is not supported in Internet Explorer.


Complete Array Reference

For a complete Array reference, go to our:

Complete JavaScript Array Reference.

The reference contains descriptions and examples of all Array properties and methods.