js字典操作

<!DOCTYPE html>

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title>javascript字典数据结构Dictionary实现</title>
    <script src="JS/jquery-easyui-1.5/jquery.min.js"></script>
    <script>
        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'));
    </script>
</head>
<body>

    <form id="form1" runat="server">
        <div>
        </div>
    </form>
</body>
</html>

 

转载于:https://www.cnblogs.com/albert-xiong/p/6846621.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值