function makeAdder(x) {
// This inner function forms a closure.
// It "remembers" the value of x even after makeAdder returns.
return function(y) {
return x + y;
};
}
const add10 = makeAdder(10); // x = 10 is captured
const result = add10(20); // y = 20
console.log(result);
/*
run:
30
*/