DEV Community

Discussion on: When are semicolons needed in JavaScript?

Collapse
 
patarapolw profile image
Pacharapol Withayasakpunt • Edited

I thought you are going to explain...

I currently use no semicolon, but some of the most common scenario at the beginning of the line include

;(() => {
  // scoped JS code
})()

;(a as any).b = c

;[1, 2, 5].map(fn)

ESLint in VSCode will complain, if a semicolon is needed.

Collapse
 
pandaquests profile image
Panda Quests

Actually I was going to write a blog post about it. But I was researching first in order not to forget things. There are indeed at least two cases where semicolons aren't optional. I wonder whether there are more....?

Collapse
 
patarapolw profile image
Pacharapol Withayasakpunt • Edited

You know it is call ASI, right? -- this SO post

Normally, I wouldn't run into something like

return
{ 
  foo: 1
}

Although, I do get things like this from Prettier. (I didn't create it myself.)

const foo =
  'very long text'