this post was submitted on 29 Dec 2023
206 points (78.8% liked)

Programmer Humor

32174 readers
951 users here now

Post funny things about programming here! (Or just rant about your favourite programming language.)

Rules:

founded 5 years ago
MODERATORS
 

cross-posted from: https://lemmy.world/post/10094818

spoilerGender 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;

you are viewing a single comment's thread
view the rest of the comments
[–] Tyfud 2 points 9 months ago (1 children)

Const keyword means constant, a value that won't change after the application has been compiled; this allows for certain optimizations.

Let keyword is a JavaScript variable that is safely scoped down to the method or function level.

Var keyword is generally discouraged in JavaScript, because it's a global declaration. The value of it could be available anywhere in the application, and the app might have collisions.

So, the meme is, shifting from a constant, unchanging gender, to the middle where gender is defined and scoped to a local level, to the extreme, where gender is variable globally.

[–] [email protected] 1 points 9 months ago

Const keyword means constant, a value that won't change after the application has been compiled; this allows for certain optimizations.

JavaScript does not have compile-time constants (it’s usually not compiled after all). The const keyword declares an immutable variable.

Let keyword is a JavaScript variable that is safely scoped down to the method or function level.

Variables declared with let are scoped to the block, not to the function.

Var keyword is generally discouraged in JavaScript, because it's a global declaration. The value of it could be available anywhere in the application, and the app might have collisions.

var is scoped to the function, not globally (unless it’s at the global level). It is discouraged because of its confusing semantics (“variable hoisting”).