zoukankan      html  css  js  c++  java
  • 一段经典的javascript代码分析

    var collection = (function () {
        var keys = [], values = [];

        return {
            get: function (key) {
                var at = keys.indexOf(key);
                if (at >= 0) {
                    return values[at];
                }
            },
            set: function (key, value) {
                var at = keys.indexOf(key);
                if (at < 0) {
                    at = keys.length;
                }
                keys[at] = key;
                values[at] = value;
            },
            remove: function (key) {
                var at = keys.indexOf(key);
                if (at >= 0) {
                    keys.splice(at, 1);
                    values.splice(at, 1);
                }
            }
        };
    }());

    这个类相当于定义了一个静态集合类,可以直接通过collection去添加和删除元素。

    函数内部直接返回一个对象 return {};而这个对象里面又包含三个方法,这三个方法可以通过这个静态的对象来访问!

    唯一有点不明白的地方就是这样定义的意思:

    var collection = (function () {}());

    等待更深入一层的时候再进行分析!

    路慢慢其休远羲,吾将上下而求所
  • 相关阅读:
    [hdu5312]数的拆分,数学推导
    [POJ1038]状压DP
    [hdu2112]最短路
    [hdu1532]最大流
    [hdu5256]LIS模型
    [hdu5255]枚举
    [hdu5254]BFS
    [hdu5270]按位统计,容斥,归并
    Elasticsearch在Centos 7上的安装与配置
    手动安装java1.8
  • 原文地址:https://www.cnblogs.com/garinzhang/p/3639473.html
Copyright © 2011-2022 走看看