Я немного поиграл с замыканиями, чтобы выучить их, и сделал этот код:
function showName(a,b,c){
(function nombresAnidados(a){
(function(b){
(function(c){
console.log("hola " + a + " " + b + " " + c);
})(a)
})(b)
})(c)
}
showName("cat","dog","horse");
Я ожидал, что он напечатает: «Привет, собака-кошка», но вместо этого он напечатает: «Привет, лошадь, лошадь, лошадь»
Пожалуйста, запустите ее здесь:
function showName(a,b,c){
(function nombresAnidados(a){
(function(b){
(function(c){
console.log("Hi, " + a + " " + b + " " + c);
})(a)
})(b)
})(c)
}
showName("cat","dog","horse");
Что вызывает такое поведение?
Спасибо.