https://www.academyit.net/articles/the-difference-between-let-and-var-in-javascript