Aplicação de Passagem de Função como Parâmetro em JavaScript
Vamos criar uma função que receberá um array como primeiro parâmetro e uma função como segundo parâmetro. A função passada será aplicada a cada elemento do array:
function test(arr, func) {
// retornaremos o array modificado
}
Vamos implementar:
function test(arr, func) {
// Iniciamos o loop:
for (let i = 0; i < arr.length; i++) {
arr[i] = func(arr[i]); // aplicamos a função a cada elemento
}
return arr; // retornamos o array modificado
}
Vamos aplicar nossa função a algum array:
function test(arr, func) {
for (let i = 0; i < arr.length; i++) {
arr[i] = func(arr[i]);
}
return arr;
}
// Vamos transformar o array de números em um array de seus quadrados:
let result = test(
[1, 2, 3],
function(num) {return num * num;}
);
console.log(result); // exibirá [1, 4, 9]
Vamos formatar a chamada da nossa função de forma mais elegante (é a maneira mais comum):
function test(arr, func) {
for (let i = 0; i < arr.length; i++) {
arr[i] = func(arr[i]);
}
return arr;
}
// Vamos formatar o código de forma mais elegante:
let result = test([1, 2, 3], function(num) {
return num * num;
});
console.log(result); // exibirá [1, 4, 9]
Sem olhar o meu código, implemente a mesma
função test por conta própria.
Chame a função test que você criou,
passando para ela um array com números como parâmetro. Faça com
que a função retorne um array com os cubos
desses números.