What is a Hash in javascript? How can i use a hash for an array?
12,776
The word "hash" has many meanings, but in this case it probably refers to generic javascript Objects, which are "hashtables" internally. Objects have "add" and "contains" functionality built-in:
foo = {}
foo['x'] = 1 // "add"
'x' in foo // "contains"
Do note, however, that keys are always converted to strings, therefore if you want keys of other types (e.g. generic objects), you'll have to use custom functions, for example:
contains = function(ary, obj) {
return ary.indexOf(obj) >= 0;
}
add = function(ary, obj) {
if (!contains(ary, obj))
ary.push(obj)
}
Author by
RaviTeja
Updated on June 26, 2022Comments
-
RaviTeja about 2 years
I'm using an array in my object prototype which basically has add, remove, search functions attached to it.
Something like this
myobj = function() { this.Array_ = []; } myobj.prototype.add = function(item) { goog.array.insert(this.Array_, item); } myobj.prototype.hasItem = function(item) { goog.array.contains(this.Array_, item); }
And a sample Array in my case would list of integers. [1, 2, 3, 4]
But later I learnt that this is very costly and can be cost saving if I use hash. Can someone explain use of hash with the above example.
-
Jon Onstott about 11 yearsBy "there's no way to store an object in a hashtable" you mean "there's no way to store an object as a key in a hashtable"?