Explica este código JavaScript
Dificultad: Intermedio
const sum = (num1) => {
return (num2) => {
return num1 + num2
}
}
console.log(sum(1)(2)) // 🤔🤔
- A.
SyntaxError
- B.
2
- C.
3
- D.
1
Respuesta en el primer comentario.
Top comments (1)
Respuesta
3
Para comprender este ejemplo debemos saber que es un closure en JavaScript.
Como vemos la función
sum
que recibe el parámetronum1
regresa una función anónima con parámetronum2
; dicha función anónima debe acceder al parámetronum1
que esta en un scope superior al suyo. Esto es perfectamente posible en JavaScript y es por ello que la respuesta es3
.