js实现HashTable类
模拟一个HashTable类,该类上注册四个方法:add、remove、contains、length方法,其中使用push模拟add,splice模拟remove,四个方法均注册在原型上
function HashTable() {
this.value = [];
}
HashTable.prototype.add = function(val) {
this.value.push(val);
}
HashTable.prototype.remove = function(index) {
this.value.splice(index, 1);
}
HashTable.prototype.contains = function(val) {
var preValue = this.value;
for (var i = 0; i < preValue.length; i++) {
if (val == preValue[i]) {
return true;
}
}
return false;
}
HashTable.prototype.length = function() {
return this.value.length;
}
hash = new HashTable();
hash.add(1);
hash.add(2);
console.log(hash.length());
console.log(hash.contains(1));
hash.remove(1);
console.log(hash.length());
console.log(hash.contains(1));