Estoy estudiando y tratando de entender cómo funciona el alcance en javascript. Mi principal problema es que cuando cambio el valor de una variable usando una función, no me da lo que quiero. Espero recibir en la consola el último ámbito, como en la función visible_scope_1(); . pero en cuanto a la última función visible_scope_3(), solo quería hacerlo un poco diferente, pero también fallé. En general, es posible que no preste atención a la última función.
// Very well ! So and want ... // only do with help at scope visible functions ... function visible_scope_1() { var message = "local scope"; message = "changed local scope"; message = "last scope"; return message; } // Wrong : show all resuls ... function visible_scope_2 () { var message = "local scope"; var a1 = function() { console.log(message = "inside local scope"); var b2 = function () { console.log(message = "deeper scope"); var c3 = function () { // I want to get the result from this scope. Is it possible? console.log(message = "last scope"); }; c3(); }; b2(); }; a1(); } // Wrong : show undefined function visible_scope_3 () { message = "local scope"; var a1 = function() { message = "inside local scope"; return message; var b2 = function () { message = "deeper scope"; return message; var c3 = function () { // i expect to show in console "last scope" message = "last scope"; return message; }; c3(); }; b2(); }; a1(); }