@realitista to Programmer [email protected] • 1 year agoPure Evilimagemessage-square13arrow-up1209arrow-down179cross-posted to: [email protected]
arrow-up1130arrow-down1imagePure Evil@realitista to Programmer [email protected] • 1 year agomessage-square13cross-posted to: [email protected]
minus-square@[email protected]linkfedilinkEnglish18•edit-21 year agoAutomatic Semicolon Insertion (ASI) has (sadly) been a part of JavaScript longer than 2016. I’m not sure exactly when it was introduced, but this document from 2009 already contains it: https://web.archive.org/web/20120418215856/https://ecma262-5.com/ELS5_Section_7.htm#Section_7.9 IMO it’s bad practice to rely on ASI since the semicolons may not get inserted where you expected them to. The following snippet const x = 0 const y = x [1, 2, 3].forEach(console.log) is interpreted as const x = 0; const y = x[1, 2, 3].forEach(console.log); which raises a TypeError. There are more examples of ASI not doing the right thing on the web, so I don’t agree with “Javascript doesn’t need semicolon”.
minus-square@[email protected]linkfedilinkEnglish6•1 year agoAs Mark Twain said, “Never discuss politics, semicolons, tabs, or religion in polite company.”
minus-square@[email protected]linkfedilink2•1 year agoUse an autoformatter for all code (both in the editor on save/type and as CI check). There is no problem anymore.
Yes.
Besides, Javascript doesn’t need semicolon since 2016.
Wait, did you just made a meme of my comment?
Awesome!
Glad you take it like a champ :)
Automatic Semicolon Insertion (ASI) has (sadly) been a part of JavaScript longer than 2016. I’m not sure exactly when it was introduced, but this document from 2009 already contains it: https://web.archive.org/web/20120418215856/https://ecma262-5.com/ELS5_Section_7.htm#Section_7.9
IMO it’s bad practice to rely on ASI since the semicolons may not get inserted where you expected them to. The following snippet
const x = 0 const y = x [1, 2, 3].forEach(console.log)
is interpreted as
const x = 0; const y = x[1, 2, 3].forEach(console.log);
which raises a
TypeError
.There are more examples of ASI not doing the right thing on the web, so I don’t agree with “Javascript doesn’t need semicolon”.
As Mark Twain said, “Never discuss politics, semicolons, tabs, or religion in polite company.”
Use an autoformatter for all code (both in the editor on save/type and as CI check).
There is no problem anymore.
deleted by creator