this post was submitted on 12 May 2026
994 points (98.8% liked)
memes
21287 readers
2016 users here now
Community rules
1. Be civil
No trolling, bigotry or other insulting / annoying behaviour
2. No politics
This is non-politics community. For political memes please go to !politicalmemes@lemmy.world
3. No recent reposts
Check for reposts when posting a meme, you can only repost after 1 month
4. No bots
No bots without the express approval of the mods or the admins
5. No Spam/Ads/AI Slop
No advertisements or spam. This is an instance rule and the only way to live. We also consider AI slop to be spam in this community and is subject to removal.
A collection of some classic Lemmy memes for your enjoyment
Sister communities
- !tenforward@lemmy.world : Star Trek memes, chat and shitposts
- !lemmyshitpost@lemmy.world : Lemmy Shitposts, anything and everything goes.
- !linuxmemes@lemmy.world : Linux themed memes
- !comicstrips@lemmy.world : for those who love comic stories.
founded 2 years ago
MODERATORS
you are viewing a single comment's thread
view the rest of the comments
view the rest of the comments
javascript doesn't have arrays. the backing data structure is a doubly-linked list.
and the backing for that is linear or page addressed MOS transistors, spinning rust or flippy-round magnets.
do you have a source that indicates mainstream JS engines internally uses a list structure for arrays? I can't find one.
skipped a few steps there i think.
anyway, good question. led me to some cursed code.
the ArrayObject in spidermonkey is an interface to either a TypedArrayObject or a SharedArrayObject. those both have an inner ArrayBuffer object, which is a view into ArrayBufferObjectMaybeShared, which contains a refcounted vector of uint8 pointers, regardless of the datatype. soooo all arrays in javascript are... strings?
That's a different kind of array (Float32Array etc.), not the "normal" kind.
i couldn't actually find any of that in spidermonkey. i was looking in js/vm/arrayobject and its parents, didn't see any others.
I'm guessing it's this? https://searchfox.org/firefox-main/source/js/src/builtin/Array.cpp
i did look at that but i started out here: https://searchfox.org/firefox-main/source/js/src/vm/ArrayObject.h because it inherits from NativeObject.
Yes, and since that's the wrong place I kept looking, and found the link I just sent you
i edited my thing, i did start at array.cpp but only found references to other places so i went digging down the stack.