What do the
const keywords do?
Before ES6, all variables were essentially declared using
var. One issue with
var was that when you defined a variable inside of a function, regardless of the block scope in which it was defined, it would become local to the entire function block. In addition, there was no simple way to make a variable unchangeable, so that once you declared a variable it could not be changed.
ES6 introduced the
const keywords for declaring variables, which helped to address these problems.
The let keyword is used to declare variables that could be changed, like a variable used as a counter in a loop, similar to how
var is used. However, it fixed the issue above, so that variables are block-scoped only inside the blocks they are defined in, even inside of functions.
The const keyword is used to declare variables that should not change, and would throw an error if you did try to change them. For example, you might use a variable
PI that stores the value of pi, which should not be changed, which addressed the second issue above.