提问人:Soumya Sagnik Khanda 提问时间:1/22/2023 更新时间:1/22/2023 访问量:31
如何在闭包中访问孙子变量
How to access grand-child's variable in a closure
问:
我想在下面给出的代码中从 p 中检索 a 和 b 的值。我还想从 p 运行函数 z。我该如何实现?
function x() {
var a = 10;
return function y() {
var b = 20;
return function z() {
console.log(a, b);
}
}
}
const p = x();
我是JS的新手。
答:
0赞
Adrish
1/22/2023
#1
function x() {
var a = 10;
return function y() {
var b = 20;
return function z() {
console.log(a,b)
}
}
}
// get function z
const result = x()();
console.log(result)
// get a,b
result()
调用 x 返回函数 y,调用 y 返回函数 z,即 x()();
通过调用函数 z,您可以获得 a,b(返回或控制台),即 x()()();
评论
z()
p()
x()()
a
b
p()()
x()()()
x