Rumah  >  Artikel  >  hujung hadapan web  >  Kod kelas HashMap dilaksanakan oleh kemahiran javascript_javascript

Kod kelas HashMap dilaksanakan oleh kemahiran javascript_javascript

WBOY
WBOYasal
2016-05-16 16:42:551738semak imbas

复制代码 代码如下:


fungsi HashMap() {
    /**Saiz peta**/
    saiz var = 0;
    /**Objek**/
    var entry = new Object();
    /**Kaedah letak storan peta**/
    this.put = fungsi(kunci, nilai) {
        jika (!this.containsKey(key)) {
            saiz ;
            entri[kunci] = nilai;
        }
    }
    /**Kaedah mendapatkan peta**/
    this.get = function(key) {
        kembalikan this.containsKey(key) ? entri[kunci] : null;
    }
    /**Kaedah buang padam peta**/
    this.remove = function(key) {
        if (this.containsKey(key) && (delete entry[key])) {
            saiz--;
        }
    }
    /**Sama ada hendak memasukkan Kunci**/
    this.containsKey = fungsi(kunci) {
        kembali (kunci masuk);
    }
    /**Sama ada hendak memasukkan Nilai**/
    this.containsValue = fungsi(nilai) {
        untuk (var prop dalam entri) {
            jika (entri[prop] == nilai) {
                kembali benar;
            }
        }
        pulangkan palsu;
    }
    /**Semua Nilai**/
    this.values ​​= function() {
        nilai var = new Array();
        untuk (var prop dalam entri) {
            values.push(entry[prop]);
        }
        pulangkan nilai;
    }
    /**Kunci Semua**/
    this.keys = function() {
        var keys = new Array();
        untuk (var prop dalam entri) {
            keys.push(prop);
        }
        pulangkan kunci;
    }
    /**Saiz peta**/
    this.size = function() {
        saiz pulangan;
    }
    /**Kosongkan Peta**/
    this.clear = function() {
        saiz = 0;
        entri = Objek baharu();
    }

}
//创建HashMap对象
var hashMap = new HashMap();
hashMap.put("A", "1");
hashMap.put("B", "2");
hashMap.put("A", "5");
hashMap.put("C", "3");
hashMap.put("A", "4");
alert(hashMap.size());


Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn