For further actions, you may consider blocking this person and/or reporting abuse
Read next
Are You Ready for These JavaScript Interview Puzzles?
dev.to staff -
10 Must-Have Web Development Tools of 2024: Level Up Your WebDev Game!
Mangesh Tayade -
Exploring the Versatility of Web Scraping APIs for Data Extraction
sameer -
JavaScript Secrets: How to Implement Retry Logic Like a Pro
Anurag Gupta -
Top comments (4)
I would add that
MapandSetcome standard with modern JS, which enables you to create hashtables out of object references, not just strings. This allows you to pass any object, primitive type,nullorundefinedas the key with any other value. As a bonus, they both expose Iterator interfaces.Oh wow, does that mean this does a deep comparison of the object? Wondering if I might want to start using this to find objects in an array of objects (as opposed to finding it by a property comparison). 1. I think it would be easier in some cases, and 2. wondering if this assigns a hash behind the scenes and has a lower time complexity.
No, it's not a deep comparison, it's equivalent to
===between values, just likeindexOf()on arrays. And yes, internally within the VM, every object has a unique ID which is used for comparisons using strict equality, but it isn't available as an exposed value in JS.For an in-depth look at that, see dev.to/krofdrakula/searching-throu...
You're probably talking about an object
const hashtable = {}.In JS, everything is an object (like in Ruby), and here you can store any key/value pair.
Objects are very useful in any occasion unless you just need a single variable or a list (array). Of course I'm not extending to classes and O.
You access object's data using the key you need
const age = person.age //or person['age']and set it's value the same wayperson.name = "john" //person["name"] = "john".