5 ms·
That's why we introduced the strict mode ("use strict" pragma)[1]. Among other things, it prevents from accidentally declaring a global variable this way, throw
by maga 4y ago
That's why we introduced the strict mode ("use strict" pragma)[1]. Among other things, it prevents from accidentally declaring a global variable this way, throwing a ReferenceError.
Actually, at this point, with the prolifiration of strict mode and linters, I'd say that these old gotchas mostly belong to quizzes and spec discussions, since personally I have not seen new code written this way even in vanilla JS for years by now.
[1] https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Strict_mode https://developer.mozilla.org/en-US/docs/Web/JavaScript/Refe...
- bryanrasmussen 4y agoI'm pretty sure I've seen something similar to let a = b = 0 in the last couple months, without strict mode and it evidently hadn't been linted away. Maybe it wasn't 'new' code but it was new enough to use let. on edit: actually considering the project I would think it was written somewhere within the last 2 years.
- __ryan__ 4y agoYou might be thinking of: let a = 0, b = 0
- bryanrasmussen 4y agono It was definitely a = b = somethingelse structure, because I hate that structure.
- bryanrasmussen 4y agoI should apologize, my normal way of writing made it seem like I wasn't sure about having seen it but I was sure, I often use phrases that imply inexact information (for example: I guess) when what I mean oh yeah, I am sure about this thing.