Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

135
Vistas
Higher Order Functions and Callbacks - Using "return"
function eitherCallback(callback1, callback2) {
  return (element, i, array) => {return callback1(element, i, array) || callback2(element, i, array)}
}

function filterArray(array, callback) {
 const newArray = [];
 for (let i = 0; i < array.length; i += 1) {
   if (callback(array[i], i, array)) newArray.push(array[i]);
 }
 return newArray;
}
const arrOfNums = [10, 35, 105, 9];

const integerSquareRoot = n => Math.sqrt(n) % 1 === 0; // condition 1 as a function
const over100 = n => n > 100; // condition 2 as a function

const intSqRtOrOver100 = eitherCallback(integerSquareRoot, over100); // function to combine functions

console.log(filterArray(arrOfNums, intSqRtOrOver100)); // should log: [105, 9]

Above is a piece of code that I've written for my coding bootcamp prep. However, I am confused on the purpose of the second "return" in the eitherCallback function. I have read the syntax on arrow functions in ES6 and I read that the return is not needed if the function is a single line. However, when I remove that second "return" the output of console.log(filterArray(arrOfNums, intSqRtOrOver100)); returns an empty array.

The eitherCallback function takes two arguments: callback1 and callback2, which are going to be functions integerSquareRoot and over100. When I look at those functions, the return of those two functions are booleans which leads me to my confusion. Since callback1 and callback2 already return booleans, why do I get an empty array if I omit the second "return" in the eitherCallback function?

Thank you.

about 4 years ago · Juan Pablo Isaza
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda