Skip to content

Commit 26b0f56

Browse files
committed
Section 9:Functions as Return Values DONE
1 parent 02f04d7 commit 26b0f56

1 file changed

Lines changed: 63 additions & 1 deletion

File tree

  • 09-An-Advanced-Look-at-Functions/01

09-An-Advanced-Look-at-Functions/01/01.js

Lines changed: 63 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -321,4 +321,66 @@ pickOne(cry, rage)
321321
*/
322322

323323
// Functions as Arguments ******************************
324-
// Example 18
324+
// Example 21
325+
console.log('\n')
326+
function multiplyByNo1(num) {
327+
// Function expression, anonymous functiion
328+
return function () {
329+
console.log('HI!!')
330+
}
331+
}
332+
const mystery = multiplyByNo1()
333+
console.log(mystery)
334+
console.log(mystery())
335+
336+
console.log('\n')
337+
// Example 22
338+
function multiplyByNo2(num) {
339+
return function (x) {
340+
return x * num
341+
}
342+
}
343+
// Stores 3 in the func multiplyByNo2(num) variable
344+
const triple = multiplyByNo2(3)
345+
console.log(triple(6)) // 18, x * num, 6 * 3
346+
console.log(triple(2)) // 6, x * num, 2 * 3
347+
console.log(triple(9)) // 27, x * num, 9 * 3
348+
349+
console.log('\n')
350+
// Stores 2 in the func multiplyByNo2(num) variable
351+
const double = multiplyByNo2(2)
352+
console.log(double(5)) // 10, x * num, 5 * 2
353+
console.log(double(3)) // 6, x * num, 3 * 2
354+
355+
console.log('\n')
356+
const halve = multiplyByNo2(0.5)
357+
console.log(halve(9)) // 4.5, x * num, 9 * 0.5
358+
359+
console.log('\n')
360+
// Example 23
361+
function makeBetweenFunc2(x, y) {
362+
return function (num) {
363+
if (num >= x && num <= y) {
364+
return true
365+
}
366+
return false
367+
}
368+
}
369+
// Short syntax of makeBetweenFunc2
370+
function makeBetweenFunc(x, y) {
371+
return function (num) {
372+
return num >= x && num <= y
373+
}
374+
}
375+
const isChild = makeBetweenFunc(0, 18)
376+
console.log(isChild(17)) // true
377+
console.log(isChild(99)) // false
378+
console.log('\n')
379+
const isInNineties = makeBetweenFunc(1990, 1999)
380+
console.log(isInNineties(1989)) // false
381+
console.log(isInNineties(1992)) // true
382+
383+
console.log('\n')
384+
const isNiceWeather = makeBetweenFunc(60, 79)
385+
console.log(isNiceWeather(45)) // false
386+
console.log(isNiceWeather(76)) // true

0 commit comments

Comments
 (0)