In JavaScript, the semicolon (`;`) is optional as a statement separator, but omitting semicolons can be confusing, and lead to unexpected results because a semicolon is implicitly inserted at the end of each line.

## Noncompliant Code Example

    function fun() {
      return  // Noncompliant. ';' implicitly inserted at end of line
           5   // Noncompliant. ';' implicitly inserted at end of line
    }
    print(fun());  // prints "undefined", not "5"

## Compliant Solution

    function fun() {
      return 5;
    }
    print(fun());