()
Parentheses (or "round brackets") explicitly set the limits of an expression and thereby clarify operator precedence.
x = 5 * (3 + 7);
x is 50.
x = 5 * 3 + 7;
x is 22.
They have a special use related to functions.
{}
Braces (or "curly brackets") form a block. If treated as an expression, they become an object literal instead. Also, the block is a mandatory part of each function literal.
[]
Square brackets are used exclusively with arrays.
;
The semicolon tells the parser that the previous statement is finished. In most cases, it is unnecessary; see control structures.