this post was submitted on 14 Feb 2026
354 points (99.7% liked)

Programmer Humor

29741 readers
1146 users here now

Welcome to Programmer Humor!

This is a place where you can post jokes, memes, humor, etc. related to programming!

For sharing awful code theres also Programming Horror.

Rules

founded 2 years ago
MODERATORS
you are viewing a single comment's thread
view the rest of the comments
[–] sunnie@sopuli.xyz 16 points 14 hours ago (2 children)

that's not really a thing in JS as Math isn't imported, it's just an object available globally. the closest you can get is like const { random: getRandom } = Mathbut that's just uglier.

the implication is that this function is exported from a library so they have to keep the function around - obviously in a modern project you'd just do Math.random()

[–] MonkderVierte@lemmy.zip 11 points 14 hours ago (1 children)

And that's only one of the many reasons that JavaScript is a clown language.

[–] bleistift2@sopuli.xyz 4 points 13 hours ago (1 children)

Which of these things, excactly? That Math just floats around in the global scope? Or that that destructuring assignment works? Or that the author chose to abstract around Math.random(). That has come very handy for me when testing.

[–] MonkderVierte@lemmy.zip 6 points 12 hours ago* (last edited 12 hours ago) (2 children)

Global scope.

Also that there's, after 35 years of webbrowsers, still no reliable way to match a domain without subdomain, except via string splitting.

[–] bleistift2@sopuli.xyz 4 points 12 hours ago (1 children)

I see your point regarding global scope. But personally, I’ve never encountered an issue with it. And it’s kinda nice not to have to import fetch every time you need it.

Regarding subdomains, if you’ll humor my curiosity: What’s the use case? I also wonder what an API for this might look like.

const {domain, subdomains, rootDomain} = new URL('https://wikipedia.org/')
//       'wikipedia.org', [], 'wikipedia.org'
const {domain, subdomains, rootDomain} = new URL('https://foo.bar.baz.net/')
//       'foo.bar.baz.net', ['foo.bar.baz.net', 'bar.baz.net'], 'baz.net'
[–] MonkderVierte@lemmy.zip 3 points 12 hours ago* (last edited 11 hours ago) (1 children)

A userscript over links for debugging purposes, that should ignore links to the same domain (www.w3schools vs campus.w3schools vs www.youtube).

Btw, it's funny how support.mozilla and some standards-teaching-sites are some of the worst offenders of web standards.

Edit: how to stop this auto-linking?

[–] bleistift2@sopuli.xyz 2 points 12 hours ago (1 children)

If I understand correctly, you want to check the current domain (eg. w3schools) against api.w3schools and www.youtube, and return true for the first and false for the second (or the other way around)

Then technically it’s possible without string splitting:

const href = 'retrieved-from-the-anchor-element';
(new URL(href, location.href).hostname).endsWith(location.hostname)
[–] MonkderVierte@lemmy.zip 2 points 11 hours ago

Well, the whole web is basically "let's go, make it work somehow". Thanks for your effort!

[–] dreamkeeper@literature.cafe 2 points 12 hours ago* (last edited 12 hours ago)

Most scripting languages have a global scope of some kind. It's not that big of a deal.

I'd prefer not to have it, but it hasn't caused me problems in many years. Actually, the window object can be really useful in some situations so I'm not even sure about that.

[–] Bombastic@sopuli.xyz 1 points 12 hours ago

That code snippet isn't even one line and it's already unreadable to me