-
Notifications
You must be signed in to change notification settings - Fork 3.6k
/
Copy pathclosure.js
36 lines (25 loc) · 997 Bytes
/
closure.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
// ==== Closures ====
/* Task 1: Study the code below and explain in your own words why nested function can access the variable internal. */
const external = "I'm outside the function";
function myFunction() {
console.log(external);
const internal = "Hello! I'm inside myFunction!";
function nestedFunction() {
console.log(internal);
};
nestedFunction();
}
myFunction();
// Explanation:
// nestedFunction() lays within the closure of myFunction(), so nestedFunction() can access anything within myFunction(), but myFunction() wouldn't be able to access the contents of nestedFunction().
/* Task 2: Counter */
/* Create a function called `sumation` that accepts a parameter and uses a counter to return the summation of that number. For example, `summation(4)` should return 10 because 1+2+3+4 is 10. */
function sumation(num) {
let result = 0;
for (var i = 1; i <= num; i++) {
result += i;
}
return result;
}
let output = sumation(4);
// console.log(output);