Hacker News new | past | comments | ask | show | jobs | submit login

I had no idea JavaScript shipped without Arrays. Too bad they didn't just let objects take anything as a key, like in Lua. Then you wouldn't have all the edge cases Arrays cause in JS. Oh well!



This (anything can be a key) was eventually added with the Map class. They're an iterable type too, so they're much more useful than Objects imo.

https://developer.mozilla.org/en-US/docs/Web/JavaScript/Refe...


I agree! They are more useful! That's why I wish objects behaved that way to begin with!


> Too bad they didn't just let objects take anything as a key

They do, except they get coerced to strings in whacky ways. Objects can be used largely like arrays, and Arrays are Objects, but Array is more suited for an ordered collection of numerically indexed elements, and so has relevant properties and methods, like length and indexOf.


Yeah, but the weirdness inherent to them being objects but also not objects leads to all sorts of bullcrap, like `Array.isArray` being a thing. I greatly prefer the Lua approach where you only have one map type (tables), and there are methods that allow you to easily use the tables as an array.


The initial v1 JavaScript was written in about ten days:

https://thenewstack.io/brendan-eich-on-creating-javascript-i...




Consider applying for YC's Summer 2025 batch! Applications are open till May 13

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: