`
luosb
  • 浏览: 6584 次
  • 性别: Icon_minigender_1
社区版块
存档分类
最新评论

JavaScript实现Java的Map、List功能(其他论坛上看到的)

阅读更多

JavaScript实现Java的Map、List功能,如下代码

function HashMap(){ 

    this.size=0; 

    this.map=new Object(); 

 

HashMap.prototype.put=function(key,value){ 

    if(!this.map[key]){ 

        this.size++; 

    } 

    this.map[key]=value; 

}; 

HashMap.prototype.get=function(key){ 

    return this.isKey(key)?this.map[key]:null

}; 

HashMap.prototype.isKey=function(key){ 

    return (key in this.map); 

}; 

HashMap.prototype.remove=function(key){ 

  ifthis.isKey(key) && (delete this.map[key])){   

        this.size--;   

  }   

}; 

 

HashMap.prototype.size=function(){ 

    return this.size; 

}; 

 

HashMap.prototype.find=function(_callback){ 

    for(var _key in this.map){ 

        _callback.call(this,_key,this.map[_key]); 

    } 

}; 

//List 

 

function ArrayList(){ 

    this.size=0; 

    this.list=new Object(); 

}; 

ArrayList.prototype.add=function(obj){ 

    this.list[this.size++]; 

    return this.size; 

}; 

ArrayList.prototype.remove=function(index){ 

    if(this.size>index){ 

        delete this.list[index--]; 

        return this.size--; 

    } 

    return -1; 

}; 

ArrayList.prototype.size=function(){ 

    return this.size; 

}; 

ArrayList.prototype.get=function(index){ 

    return this.size>index?this.list[index]:null

}; 

ArrayList.prototype.clear=function(){ 

    this.list=null

}; 

ArrayList.prototype.contains=function(obj){ 

    return this.indexOf(obj)>=0?true:false

}; 

ArrayList.prototype.indexOf=function(obj){ 

    for(var i=0;i<this.size;i++){ 

        if(this.list[i]==obj){ 

            return i; 

        } 

    } 

    return -1; 

}; 

ArrayList.prototype.isEmpty=function(){ 

    return this.size<0?true:false

}; 

 

 

function HashSet(){ 

    this.size=0; 

    this.set=new Object(); 

}; 

HashSet.prototype.add=function(obj){ 

    this.indexOf(obj)<0?this.set[this.size++]=obj:null

    return this.size; 

}; 

HashSet.prototype.remove=function(index){ 

    if(this.size>index){ 

        delete this.set[index--]; 

        return this.size--; 

    } 

    return -1; 

}; 

HashSet.prototype.size=function(){ 

    return this.size; 

}; 

HashSet.prototype.get=function(index){ 

    return this.size>index?this.set[index]:null

}; 

HashSet.prototype.clear=function(){ 

    this.set=null

}; 

HashSet.prototype.contains=function(obj){ 

    return this.indexOf(obj)>=0?true:false

}; 

HashSet.prototype.indexOf=function(obj){ 

    for(var i=0;i<this.size;i++){ 

        if(this.set[i]==obj){ 

            return i; 

        } 

    } 

    return -1; 

}; 

HashSet.prototype.isEmpty=function(){ 

    return this.size<0?true:false

}; 

分享到:
评论

相关推荐

    js模拟list和map

    javascript 模拟 java中的 List,Map js文件为 js/utils.js IE6.0 测试通过 &lt;br&gt;List: add(var obj) //添加一个元素 remove(var index) //删除一个元素 get(var index) //获取一个元素 remove...

    java对象List,Map转json格式

    在Java编程中,将对象转换成JSON(JavaScript Object Notation)...通过以上步骤,你可以有效地在Java后端与JavaScript前端之间传递List和Map对象。了解并熟练掌握这些技巧,对于构建前后端数据交换的应用至关重要。

    ajax和json跟java实现List、Map直接传递

    这篇博客将深入探讨如何使用Ajax和JSON来实现与Java服务端之间List和Map的直接传递。 首先,Ajax的核心在于XMLHttpRequest对象,它允许JavaScript在不刷新整个页面的情况下与服务器进行通信。通过创建...

    jQuery的Ajax实现异步传输List、Map

    本话题将深入探讨如何使用jQuery的Ajax功能实现异步传输List和Map类型的数据,同时涉及JSON数据格式的使用。 首先,让我们了解JSON(JavaScript Object Notation),它是轻量级的数据交换格式,易于人阅读和编写,...

    json字符串转成 Map/List

    在Java中,将JSON字符串转换为Map或List是常见的操作,这在处理服务器返回的数据或者进行数据序列化时非常有用。 JSON字符串的结构主要包括对象(键值对的集合,用花括号{}包围)和数组(有序元素的集合,用方括号...

    不用第三方jar的json与object(map、list)互换java类

    本文将深入探讨如何在不依赖第三方库的情况下,实现JSON与Java对象(如Map、List)之间的互换。我们将分析标题提及的两个Java类——`jsonobject.java`和`JsonUtil.java`。 首先,`JsonUtil.java`很可能是这个功能的...

    JavaScript 实现基础 ArrayList 功能

    在JavaScript中,ArrayList是一种常见的数据结构,它模拟了Java中的ArrayList功能,允许程序员进行动态数组操作。虽然JavaScript原生不支持ArrayList,但我们可以利用数组(Array)对象来实现类似的功能。下面将详细...

    javaScript如何处理从java后台返回的list

    事情: 从java后台返回List类型数据,用于界面显示。但js中想获取它并操作它。直接使用EL表达式,js把它识别成字符串了。不是我想要的啊。。网上搜了搜大家的解决方案…最好的当然是把List集合转成json格式传到界面...

    json与List-map互换和jar

    本文将详细介绍如何在Java中实现JSON与`List&lt;Map&gt;`以及`Map`之间的互换,以及如何打包成jar文件进行部署。 1. **Map转JSON** 要将一个`Map`对象转换为JSON格式,可以使用诸如`org.json`库或`com.google.gson`库。...

    Java读取json文件,并转化为map取值

    如果JSON包含嵌套的对象或数组,它们会被转换为`Map`或`List`。 对于Map取值,你可以使用`get`方法: ```java String key = "exampleKey"; Object value = jsonData.get(key); ``` 如果值是另一个JSON对象或数组...

    javaScript和java参考手册

    Java集合框架包括List、Set、Map等接口和实现,为处理对象数组提供了强大支持。此外,Java SE(标准版)和Java EE(企业版)还提供了丰富的API,如Swing用于桌面应用,Spring框架用于企业级开发。 对于初学者,理解...

    java 数据分页显示

    前端JavaScript或者使用框架(如React、Vue等)可以实现这些功能。 4. **性能优化**:在处理大数据时,单纯使用`OFFSET`可能会导致性能下降,因为需要扫描过多无用的数据。一种改进方法是使用“游标”或“键值对”...

    aviator 实现 List 的求和、排序、最大、最小值

    Aviator 是一个强大的 Java 表达式执行引擎,它允许你在运行时动态计算表达式,类似于 JavaScript 或者其他脚本语言。在Java应用中,Aviator 特别适合用于数据分析和处理,例如对 List 中的数据进行求和、排序、找出...

    json 转为map 适合java

    json 转换为 map 在 Java 中的实现 json(JavaScript Object Notation)是一种轻量级的数据交换格式,它广泛应用于 web 开发、移动应用开发和微服务架构中。Java 是一种流行的编程语言,广泛应用于企业级应用开发、...

    Ajax 实例(list,map)

    List和Map是Java中两种常用的数据结构,List用于存储有序的元素集合,而Map则用于存储键值对。 ### 1. Ajax 请求基础 #### 1.1 XMLHttpRequest对象 创建一个XMLHttpRequest对象,然后通过其open()方法指定请求...

    androidmap转json字符串、list转json字符串工具类.zip

    本压缩包提供了两个关键功能:将Map对象转换为JSON字符串和将List对象转换为JSON字符串。这两个工具类对于Android开发者来说非常实用,因为它们简化了Java对象与JSON格式之间的互换过程。 首先,让我们详细了解Map...

    json转为list 涉及 java springboot

    "JSON 转换为 List 涉及 Java 和 Spring Boot" JSON 转换为 List 是一种常见的数据处理操作,特别是在 Java 和 Spring Boot 应用程序中。下面我们将详细介绍如何使用 Java 和 Spring Boot 将 JSON 字符串转换为 ...

    Java集合Collection、List、Set、Map使用详解.doc

    Java 集合框架的主要组件包括 Collection、List、Set、Map 等。 1.1 容器简介 容器是指可以存储对象的对象。 Java 集合框架中有多种类型的容器,每种容器都有其特点和用途。常见的容器有 Collection、List、Set、...

    java转换xml、list、map和json.pdf

    在Java开发中,数据交换和存储经常涉及XML、JSON以及List和Map之间的转换。XML(eXtensible Markup Language)是一种用于标记数据的格式,而JSON(JavaScript Object Notation)则是一种轻量级的数据交换格式,两者...

    dwr练习实例(各种数据转换list,map,数组等)

    Direct Web Remoting (DWR) 是一个开源的Java库,它允许JavaScript在浏览器端与服务器端的Java对象进行交互,实现Ajax应用。这个"dwR练习实例(各种数据转换list,map,数组等)"是一个用于学习DWR如何处理和转换不同...

Global site tag (gtag.js) - Google Analytics