Exploring JavaScript Variable Declarations: Var, Let, and Const | HackerNoon
Briefly

var is function-scoped or globally scoped if declared outside a function. Variables declared with var are hoisted to the top of their scope, meaning they can be referenced before their declaration.
let is block-scoped and not hoisted in the same manner as var, making its behavior more predictable.
const is block-scoped but allows for variables that should not be reassigned. It does not make the value immutable if the variable holds a reference to an object.
Read at Hackernoon
[
|
]