cross-posted from: https://lemmy.world/post/10094818
spoiler
Gender variability as declarations in JavaScript: const / let / var
Meme is based on Jordan Peterson “approival / disapproval” format, him being a conservative who disapproves of gender fluidity.
Transcript:
- Jordan Peterson approval image: const gender;
- Jordan Peterson angry image: let gender;
- Jordan Peterson crying image: var gender;
Last one can be freely changed by anyone, the middle one still has some restraints.
var
isn’t global unless it’s not inside a function.var
is just function scoped, with declaration auto hoisted to the beginning of the function.let
is a little more intuitive since you can’t refer to it before it’s been declared and has block scope rather than function scope.Wait… you can use a variable before you declare it?
var a; (function() { a='hoisted'; console.log(a); var a; })() console.log(a);
Should log
hoisted
and thenundefined
, showing that you’ve assigned to the later-declaredvar a
which was hoisted vs the external globala
.