zoukankan      html  css  js  c++  java
  • javascript字典数据结构Dictionary实现

    <!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>


  • 相关阅读:
    Android--多线程之Handler
    webkit-transition-
    结构体直接赋值
    shell 俄罗斯方块 杂记
    debian 开启daytime等服务 "xinetd"
    Linux中 etc/init.d “服务"
    <iOS>关于Xcode上的Other linker flags
    多线程总结
    git的使用与分支管理
    -ios项目中安装和使用CocoaPods
  • 原文地址:https://www.cnblogs.com/smartsmile/p/6234022.html
Copyright © 2011-2022 走看看