closure
This commit is contained in:
parent
5b195795da
commit
964ed57c42
39 changed files with 365 additions and 461 deletions
|
@ -0,0 +1,29 @@
|
|||
importance: 5
|
||||
|
||||
---
|
||||
|
||||
# Which variables are available?
|
||||
|
||||
The function `makeWorker` below makes another function and returns it. That new function can be called from somewhere else.
|
||||
|
||||
Will it have access to the outer variables from its creation place, or the invocation place, or both?
|
||||
|
||||
```js
|
||||
function makeWorker() {
|
||||
let name = "Pete";
|
||||
|
||||
return function() {
|
||||
alert(name);
|
||||
};
|
||||
}
|
||||
|
||||
let name = "John";
|
||||
|
||||
// create a function
|
||||
let work = makeWorker();
|
||||
|
||||
// call it
|
||||
work(); // what will it show?
|
||||
```
|
||||
|
||||
Which value it will show? "Pete" or "John"?
|
Loading…
Add table
Add a link
Reference in a new issue