文档章节

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

1217528969
 1217528969
发布于 2015/03/02 14:30
字数 152
阅读 17
收藏 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
济南
私信 提问
驾考交规基础培训+速成练习+模拟考试系统

驾考交规科目一和科目四 基础培训+速成练习+模拟考试系统 一、规约设计 1、单机版即可 2、系统原文件有加密保护,非授权不可使用(原文件) 3、可对题库进行增删改查操作 4、可移植 二、详细...

-李晴
2017/04/27
1
0
Map-HashMap-LinkedHashMap-Map.Entry-Collections-可变参数

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

老胡2015
2018/06/26
0
0
黑马程序员——集合篇

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

optimisticpig
2014/05/03
0
0
spring学习——Ioc基础四(Di的配置使用)

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

小风89
2015/10/12
222
0
【第三章】 DI 之 3.1.3 DI的配置使用 ——跟我学spring3

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

azikaxu
2015/04/15
0
0

没有更多内容

加载失败,请刷新页面

加载更多

js 写文件

//写文件function doSave(value, type, name) {    var blob;    if (typeof window.Blob == "function") {        blob = new Blob([value], {type: type});    }......

重城重楼
1分钟前
0
0
Ubuntu and Apache 搭建 Let's Encrypt SSL Https

本文参考来着来自https://www.howtoing.com/install-free-lets-encrypt-ssl-certificate-for-apache-on-debian-and-ubuntu 感谢作者的分享 本事例环境介绍 ubuntu (Version 16.04.1 LTS) ubu......

罗培海
4分钟前
3
0
如何优雅的使用RabbitMQ

目录 RabbitMQ无疑是目前最流行的消息队列之一,对各种语言环境的支持也很丰富,作为一个.NET developer有必要学习和了解这一工具。消息队列的使用场景大概有3种: 1、系统集成,分布式系统的...

编程SHA
7分钟前
0
0
阿里开发者们的第19个感悟:Simple is better.

1月16日,Simple is better.这是我们送给开发者的第19个感悟。 Mars,基于矩阵的统一计算框架。已经开源。那么:Mars 是什么,能做什么,怎么做的;Mars 如何分布式地执行等。可以与继盛多交...

阿里云官方博客
8分钟前
1
0
StringBuffer 和 StringBuilder 的 3 个区别

StringBuffer 和 StringBuilder 它们都是可变的字符串,不过它们之间的区别是 Java 初中级面试出现几率十分高的一道题。这么简单的一道题,栈长在最近的面试过程中,却经常遇到很多求职者说反...

Java技术栈
11分钟前
0
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部