Por favor, compruebe este código. ¿Cómo anotherFunc puede leer this valores de outerFunc , donde ambas funciones tienen diferentes alcances?
console.log("hello"); function outerFunc() { this.name = "Krishna"; this.mobile = 12345; this.address = "India"; function innerFunc() { console.log(this.name); // "krishna" console.log(this.mobile); // 12345 console.log(this.address); // "India" } innerFunc(); } outerFunc(); function anotherFunc() { console.log(this.name); // 'Krishna' console.log(this.mobile); // 12345 console.log(this.address); //'India' } anotherFunc();Actualizar:
console.log("hello"); function outerFunc() { this.name = "Krishna"; this.mobile = 12345; this.address = "India"; this.innerFunc = function () { console.log(this.name); console.log(this.mobile); console.log(this.address); }; } let func = new outerFunc(); func.innerFunc(); function anotherFunc() { console.log(this.name); // 'Krishna' console.log(this.mobile); // undefined console.log(this.address); // undefined } anotherFunc();