https://jscomplete.com/learn-javascript
https://jscomplete.com/javascript-higher-order-functions-callbacks
https://jscomplete.com/javascript-function-scopes-block-scopes
https://jscomplete.com/what-are-closures-in-javascript
https://jscomplete.com/javascript-function-arguments-rest-parameters
https://gist.github.com/xgqfrms-gildata/0080e188a6921504717220fdae5eddb9