文档章节

7_引用类型(【四】object练习模拟Map)

1217528969
 1217528969
发布于 2015/03/02 14:30
字数 152
阅读 16
收藏 1
//使用js模拟java中的Map
function Map(){
    var obj = {};
    this.put = function(key, value){
        if(key){
            obj[key] = value;
        }
    };
    
    this.get = function(key){
        if(key || obj[key] === 0 || obj[key] === false){
            return obj[key];
        }
        return null;
    };
    this.size = function(){
        var count = 0;
        for(var attr in obj){
            count++;
        }
        return count;
    };
    
    this.remove = function(key){
        //注意此处的判断条件
        if(key || obj[key] === 0 || obj[key] === false){
            delete obj[key];
        }
    };
    
    this.each = function(fn){
        for(var attr in obj){
            fn(attr, obj[attr]);
        }
    };
    
    this.keys = function(){
        var keys = [];
        for(var attr in obj){
            keys.push(attr);
        }
        return keys;
    };
}

var m = new Map();
m.put("01", "abc");
m.put("02", false);
m.put("03", true);
m.put("04", new Date());
console.info(m.size());
console.info(m.get("02"));
m.remove("03");
console.info(m.get("03"));
m.each(function(key, value){
    console.info(key + " --> " + value);
});

© 著作权归作者所有

共有 人打赏支持
1217528969
粉丝 1
博文 27
码字总数 14810
作品 0
济南
私信 提问
黑马程序员——集合篇

------- android培训、java培训、期待与您交流! ---------- 1、集合类 为什么出现集合类? 面向对象语言对事物的体现都是以对象的形式,所以为了方便对多个对象的操作,就对对象进行存储,集...

optimisticpig
2014/05/03
0
0
Map-HashMap-LinkedHashMap-Map.Entry-Collections-可变参数

一.Map 接口(java.util) 定义:public interface Map 介绍: (1)Map是一个接口,含有两个泛型,创建子类对象的时候,需要传递两个泛型的值; (2)将键映射到值的对象。一个映射不能包含重复的键;每...

老胡2015
06/26
0
0
spring学习——Ioc基础四(Di的配置使用)

一、依赖和依赖注入 传统应用程序设计中所说的依赖一般指“类之间的关系”,那先让我们复习一下类之间的关系: 泛化:表示类与类之间的继承关系、接口与接口之间的继承关系; 实现:表示类对...

小风89
2015/10/12
222
0
nature/kunter-generator

kunter-generator Git@OSC GitHub Bitbucket Coding 因服务器问题,Maven私库无法提供服务,如需下载kunter-base包请私信我 特别声明:因为采用了12c特有分页语法,本工具Oracle暂时不支持O...

nature
2015/06/03
0
0
【第三章】 DI 之 3.1.3 DI的配置使用 ——跟我学spring3

四、其他引用方式:除了最基本配置方式以外,Spring还提供了另外两种更高级的配置方式,<ref local=””/>和<ref parent=””/>: (1)<ref local=””/>配置方式:用于引用通过<bean id=”...

azikaxu
2015/04/15
0
0

没有更多内容

加载失败,请刷新页面

加载更多

CentOS 安装PHP5和PHP7

安装PHP5 下载解压二进制包 [root@test-a src]# cd /usr/local/src/[root@test-a src]# wget http://cn2.php.net/distributions/php-5.6.32.tar.bz2[root@test-a src]# tar jxvf php-5.6......

野雪球
今天
4
0
windows上类似dnsmasq的软件Dual DHCP DNS Server

官网地址:http://dhcp-dns-server.sourceforge.net/官网定向的下载地址:https://sourceforge.net/projects/dhcp-dns-server/files/ 设置参考地址:http://blog.51cto.com/zhukeqiang/18264......

xueyuse0012
今天
3
0
LinkedHashMap源码解析

前言 HashMap中的元素时无序的,也就是说遍历HashMap的时候,顺序和放入的顺序是不一样的。 如果需要有序的Map,就可以采用LinkedHashMap. LinkedHashMap通过维护一个包含所有元素的双向链表,...

grace_233
今天
3
0
初识flask

文档 0.10.1版本 http://www.pythondoc.com/flask/index.html 1.0.2版本 https://dormousehole.readthedocs.io/en/latest/ 安装flask $ pip3 install flaskCollecting flask Downloading......

yimingkeji
昨天
5
0
Akka系统《sixteen》译

Actor是一个封装状态(state)和行为(behavior)的对象,它们只通过交换消息通信(放入收件人邮箱的邮件)。从某种意义上说,Actor是最严格的面向对象编程形式,但它更适合将他们视为人:在与Act...

woshixin
昨天
3
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部