Ayuda!!
A mi parecer hay un error con el test “addTogether(5, undefined) should return undefined”
Al llamar la funcion con esos argumentos es lo mismo que hacer addTogether(5) lo cual deberia devolver una función.
Pasan todos los test menos ese.
Mi codigo:
function addTogether(a, b) {
if(typeof a !== 'number'){
return undefined
}
if(b===undefined) {
return function(c) {
if (typeof c !== 'number'){
return undefined;
}
return a + c;
}
}
if(typeof b !== 'number'){
return undefined
}
console.log(b)
return a + b;
}
La solucion no esta a simple vista. La idea es poder aprender a diferenciar cuando se le pasa y no se le pasa un parametro a la funcion, incluso si es undefined.
Mira la diferencia entre estos dos casos:
function testFn() {
console.log("Cantidad de Argumentos:", arguments.length);
}
testFn(1, 2, 3); // Salida: "Cantidad de Argumentos: 3"
testFn(1, undefined, undefined) // Salida: "Cantidad de Argumentos: 3"
testFn(1); // Salida: "Cantidad de Argumentos: 1"
Teniendo en cuenta esto, entonces si hay una diferencia entre pasarle o no undefined.
Otra cosa, en el futuro, tambien recuerda compartir el link hacia la leccion que te da problemas, como bien menciona @franciscomelov
Por cierto, modifique tu publicacion para mejorar el formato. En el futuro procura utilizar las comillas invertidas ` para compartir tu codigo, asi es mas facil de leer para el resto: