codehag / js-better-errors

Let's discuss making better errors for JavaScript
MIT License
37 stars 2 forks source link

Unclosed array literal #5

Open littledan opened 5 years ago

littledan commented 5 years ago

What is the code triggering the message?

let arr = [1, 2, 3
print(arr[0])

What went wrong in the code? What is the system trying to tell you?

The array literal is left open; I forgot to put a closing ].

What error message do you see? Which JavaScript environment produced this error?

#### jsc
SyntaxError: Unexpected identifier 'print'. Expected either a closing ']' or a ',' following an array element.

#### V8
SyntaxError: Unexpected identifier

#### chakracore
SyntaxError: Expected ']'

#### spidermonkey
SyntaxError: missing ] after element list:

What error message would you like to see?

JSC's style of error message in all engines would be the best!

Do you agree to license your suggested error message under an MIT-style license?

Yes

codehag commented 5 years ago

Just want to see if this has any potential, so i am testing it out with this error -- what do you think about doing elm style error messages?

SyntaxError: Unexpected identifier 'print'. Expected either a closing ']' or a ',' following an array element.

   --> components/some.js:511:26
511 |         let arr = [1, 2, 3
    |                          ^-
    |                          |
    |                          Expected either a closing ']' or a ',' following an array element.
512 |        print(arr[0]);
    | -------^^^^^
    |         |
    |         Unexpected identifier 'print'.