ECMAScript 2015, também chamado de ES6, é uma revisão de aprimoramento para Javascript. Com esta atualização, alguns recursos foram introduzidos e os métodos que operam com a array estão listados abaixo -

1. Método find(): Este método retorna a primeira entidade exibida do array que você está procurando, mais sintaticamente, podemos dizer que ele retorna um elemento de um array de acordo com a função de teste fornecida como um argumento. 

  • Ele retornará indefinido se nenhum elemento for encontrado de acordo com uma determinada condição.
  • Ele retornará a primeira ocorrência se mais de um elemento estiver satisfazendo a condição fornecida.

Exemplo: Estamos fornecendo uma função simples com sintaxe de seta grossa dentro do método find que verifica se o elemento atual é igual a 5 ou não, e irá retornar aquele elemento no qual esta condição produz um valor verdadeiro.

<script>
    const array = [6, 8, 78, 21, 5];
  
    const returnedElement = array.find((element) => {
        return element == 5;
    });
  
    console.log(returnedElement);
</script>

Saída:

2. Método findIndex(): É semelhante ao método find descrito acima, a diferença é que ele retorna o índice do elemento em vez do valor real e retorna -1 se esse elemento não for encontrado. Sintaticamente, ele retorna o índice de elementos para os quais a função de retorno de chamada produz um valor verdadeiro.

Exemplo:

<script>
    const array = [6, 8, 78, 21, 5];
  
    const returnedIndex = array.findIndex((element) => {
        return element == 5;
    });
  
    console.log(returnedIndex);
  
</script>

Saída:

3. Método of(): Este criará a nova instância de Array de acordo com os dados fornecidos. É independente do número e tipo de elementos. 

Sintaxe:

Array.of(element0, element1, element2,......elementn)

Exemplo: No primeiro, passamos apenas um inteiro, portanto, será criado um array com um único elemento, esse é um dos recursos que o torna diferente do construtor Array. No segundo, passamos 4 valores para criar um array.

<script>
    const arr1 = Array.of(2);
    const arr2 = Array.of(7, 2, 3, 4);
    console.log(arr1);
    console.log(arr2);
</script>

Saída:

4. Método fill(): Como o nome sugere, é usado para preencher a array ou determinada parte com um único valor fornecido. Ele retorna a array original após alguma modificação de preenchimento.

Sintaxe:

fill(value, start, end)
  • Você pode omitir o argumento inicial e final. O valor padrão é 0 e o comprimento da array, respectivamente.
  • Ele não copia o array, mas modifica o original e o retorna.

Exemplo: criamos um array no início. A primeira chamada para preencher o método está retornando a array com o valor do elemento como 1 de 3 a 5 (índice exclusivo). O segundo está retornando o array preenchido com 7 de 2 para o último índice. O terceiro está retornando a array preenchida com 3 em todos os lugares.

<script>
    const arr = [8, 3, 11, 9, 6];
    console.log(arr.fill(1, 3, 5));
    console.log(arr.fill(7, 2));
    console.log(arr.fill(3));
</script>

Saída:

5. Método from(): Ele cria uma instância copiada superficial de uma array de acordo com o objeto iterável fornecido, ou seja, conjunto, mapa, lista de nós, string, etc. 

Exemplo: Na primeira invocação do método from , passamos um conjunto e ele retorna uma instância de array e, da mesma forma, na segunda há uma string.

<script>
    const set = new Set(['foo', 'bar', 'baz', 'foo']);
    console.log(Array.from(set));
  
    const str = 'string';
    console.log(Array.from(str));
</script>

Saída:

6. Método de valores(): retorna o objeto iterável de valores do array fornecido. 

Exemplo: Depois de declarar o array, há uma chamada de função para o método de valores que está retornando o objeto iterável de valores do array.

<script>
    const arr = ['a', 'b', 'c', 'd'];
    const iterator = arr.values();
  
    for (const value of iterator) {
        console.log(value);
    }
</script>

Saída:

7. Método keys(): retorna o objeto iterável que contém as chaves dos elementos do array.

Exemplo:

<script>
    const arr = ['a', 'b', 'c', 'd'];
    const iterator = arr.keys();
  
    for (const value of iterator) {
        console.log(value);
    }
</script>

Saída:

8. Método entries(): retorna o objeto iterável que contém pares de chave e valor, onde as chaves são o índice desse elemento na array.

Exemplo:

<script>
    const arr = ['a', 'b', 'c', 'd'];
    const iterator = arr.entries();
  
    for (const value of iterator) {
        console.log(value);
    }
</script>

Saída:

9. Método copyWithin(): Como o próprio nome indica, é usado para copiar superficialmente os elementos dentro do mesmo array de um local para outro. O comprimento da array permanecerá inalterado. 

Sintaxe:

copyWithin(target, start, end);
  • Você pode omitir o argumento inicial e final. O valor padrão é 0 e o comprimento da array, respectivamente.
  • Se o alvo for posicionado após o início, a sequência copiada será cortada para se ajustar ao comprimento da array

Exemplo: Em primeiro lugar, criamos uma array e, em seguida, a primeira chamada para copyWithin está copiando o conteúdo da array do 4º índice para o 5º índice (exclusivo) no 0º índice de destino. Posteriormente na próxima chamada, ele está copiando o conteúdo da array do 3º índice para o último (porque o argumento final não é fornecido) no destino do 2º índice.

<script>
    const arr = [1, 2, 3, 4, 5, 6];
  
    console.log(arr.copyWithin(0, 4, 5));
    console.log(arr.copyWithin(2, 3));
</script>

Saída: