码迷,mamicode.com
首页 > 编程语言 > 详细

javascript字典数据结构常用功能实现

时间:2016-08-28 23:54:41      阅读:189      评论:0      收藏:0      [点我收藏+]

标签:

必知必会啊。

function Dictionary(){
    var items = {};

    this.has = function (key) {
        return key in items;
    };

    this.set = function(key, value){
        items[key] = value;
    };

    this.remove = function(key){
        if (this.has(key)){
            delete items[key];
            return true;
        }
        return false;
    };

    this.get = function(key){
        return this.has(key) ? items[key] : undefined;
    };

    this.values = function(){
        var values = [];
        for(var k in items){
            if (this.has(k)) {
                values.push(items[k]);
            }
        }
        return values;
    };

    this.clear = function(){
        items = {};
    };

    this.size = function(){
        var count = 0;
        for (var prop in items){
            if(items.hasOwnProperty(prop)){
                ++count;
            }
        }
        return count;
    };

    this.getItems = function(){
        return items;
    };
}

var dictionary = new Dictionary();
dictionary.set(‘Gandalf‘, ‘gandalf@email.com‘);
dictionary.set(‘John‘, ‘johnsnow@email.com‘);
dictionary.set(‘Tyrion‘, ‘tyrion@email.com‘);

console.log(dictionary.has(‘Gandalf‘));
console.log(dictionary.size());

//console.log(dictionary.keys());
console.log(dictionary.values());
console.log(dictionary.get(‘Tyrion‘));


dictionary.remove(‘John‘);

console.log(dictionary.values());
console.log(dictionary.get(‘Tyrion‘));

技术分享

javascript字典数据结构常用功能实现

标签:

原文地址:http://www.cnblogs.com/aguncn/p/5816305.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!