javaScript模拟一个HashTable类,一个类上注册四个方法:包含有add、remove、contains、length方法

作者:日期:2014-02-25 17:16:42 点击:107

 模拟一个HashTable类,一个类上注册四个方法:包含有add、remove、contains、length方法。程序如下所示:

function HashTable() {
    this.value = new Array();
}
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 aValue = this.value;
    for (var i = 0; i < aValue.length; i++) {
        if (val == aValue[i]) {
            return true;

        }
    }
    return false;
}

HashTable.prototype.length = function() {
    return this.value.length;
}

知识点:

(1)定义类需要把函数名第一个字母大写(HashTable)。

(2)This关键字指向调用者。

(3)对于对象的prototype属性的说明,JScript手册上如是说:所有 JScript 内部对象都有只读的 prototype 属性。可以向其原型中动态添加功能(属性和方法),但该对象不能被赋予不同的原型。然而,用户定义的对象可以被赋给新的原型。

(4)push() 使用方法可向数组的末尾添加一个或多个元素,并返回新的长度。

(5)Splice是数组的方法,用来增加、删除、修改数据。

splice() 使用方法向/从数组中添加/删除项目,然后返回被删除的项目。注释:该方法会改变原始数组。

上一篇: javaScript如何实现预加载一张图片,加载完成后显示在网页中并设定其高度为50px;宽度为50px;

下一篇: JavaScript模块的封装方法