js实现ArrayList功能

1.ArrayList方法摘要

构造方法摘要
ArrayList()
          构造一个初始容量为 10 的空列表。
ArrayList(Collection<? extends E> c)
          构造一个包含指定 collection 的元素的列表,这些元素是按照该 collection 的迭代器返回它们的顺序排列的。
ArrayList(int initialCapacity)
          构造一个具有指定初始容量的空列表。
方法摘要
 boolean	add(E e)
          将指定的元素添加到此列表的尾部。
 void	add(int index, E element)
          将指定的元素插入此列表中的指定位置。
 boolean	addAll(Collection<? extends E> c)
          按照指定 collection 的迭代器所返回的元素顺序,将该 collection 中的所有元素添加到此列表的尾部。
 boolean	addAll(int index, Collection<? extends E> c)
          从指定的位置开始,将指定 collection 中的所有元素插入到此列表中。
 void	clear()
          移除此列表中的所有元素。
 Object	clone()
          返回此 ArrayList 实例的浅表副本。
 boolean	contains(Object o)
          如果此列表中包含指定的元素,则返回 true。
 void	ensureCapacity(int minCapacity)
          如有必要,增加此 ArrayList 实例的容量,以确保它至少能够容纳最小容量参数所指定的元素数。
 E	get(int index)
          返回此列表中指定位置上的元素。
 int	indexOf(Object o)
          返回此列表中首次出现的指定元素的索引,或如果此列表不包含元素,则返回 -1。
 boolean	isEmpty()
          如果此列表中没有元素,则返回 true
 int	lastIndexOf(Object o)
          返回此列表中最后一次出现的指定元素的索引,或如果此列表不包含索引,则返回 -1。
 E	remove(int index)
          移除此列表中指定位置上的元素。
 boolean	remove(Object o)
          移除此列表中首次出现的指定元素(如果存在)。
protected  void	removeRange(int fromIndex, int toIndex)
          移除列表中索引在 fromIndex(包括)和 toIndex(不包括)之间的所有元素。
 E	set(int index, E element)
          用指定的元素替代此列表中指定位置上的元素。
 int	size()
          返回此列表中的元素数。
 Object[]	toArray()
          按适当顺序(从第一个到最后一个元素)返回包含此列表中所有元素的数组。
<T> T[]	toArray(T[] a)
          按适当顺序(从第一个到最后一个元素)返回包含此列表中所有元素的数组;返回数组的运行时类型是指定数组的运行时类型。
 void	trimToSize()
          将此 ArrayList 实例的容量调整为列表的当前大小。

2.js实现部分功能

<html>
<script type="text/javascript" src="json.js"></script>
<head>
  <script type="text/javascript">
  function ArrayList(){
  	this.arr=[],
  	this.size=function(){
  		return this.arr.length;
  	},
  	this.add=function(){
  		if(arguments.length==1){
  			this.arr.push(arguments[0]);
  		}else if(arguments.length>=2){
  			var deleteItem=this.arr[arguments[0]];
  			this.arr.splice(arguments[0],1,arguments[1],deleteItem)
  		}
  		return this;
  	},
  	this.get=function(index){
  		return this.arr[index];
  	},
  	this.removeIndex=function(index){
  		this.arr.splice(index,1);
  	},
  	this.removeObj=function(obj){
  		this.removeIndex(this.indexOf(obj));
  	},
  	this.indexOf=function(obj){
  		for(var i=0;i<this.arr.length;i++){
  			if (this.arr[i]===obj) {
  				return i;
  			};
  		}
  		return -1;
  	},
  	this.isEmpty=function(){
  		return this.arr.length==0;
  	},
  	this.clear=function(){
  		this.arr=[];
  	},
  	this.contains=function(obj){
  		return this.indexOf(obj)!=-1;
  	}

  };

//新建一个List
var list=new ArrayList();
//增加一个元素
list.add("0").add("1").add("2").add("3");
//增加指定位置
list.add(2,"22222222222");
//删除指定元素
list.removeObj("3");
//删除指定位置元素
list.removeIndex(0);

for(var i=0;i<list.size();i++){
	document.writeln(list.get(i));
}
document.writeln(list.contains("2"))
  </script>
</head>
<body>
</body>

</html>

时间: 2024-10-13 11:09:17

js实现ArrayList功能的相关文章

js实现照片墙功能

用javascript实现的照片墙功能:DEMO下载 <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> <head> <meta http-equiv="Content-Type" content="textml; charset=utf-8" /> <title>photo

JS全选功能代码优化

最近在看javascript MVC那本书,也感觉到自己写的代码也并不优雅,所以一直在想 用另一种模式来编写JS代码,所以针对之前的简单的JS全选功能来做个简单的demo,使用目前现在的编码方式来重新编码,当然以后会一直用这种方式来编写自己的代码.下面是如下代码: JS所有代码: /** * JS全选 * @class Checkall * @param {Object} cfg * @param {Element|selector} [cfg.container] 限定全选的容器 * @par

不用js实现幻灯片功能

one two three four five six seven eight 不用js实现幻灯片功能,布布扣,bubuko.com

js 实现打印功能

前端js实现打印功能的两种方式: 1.利用iframe,隐藏iframe,直接通过按钮直接打印,弹出打印设置页面. <button onclick="doPrint();">print</button> <iframe style="display:none" id="printIframe" frameBorder=0 scrolling=no width="100%" src="./

JS实现注销功能

JS实现注销功能,代码如下: 1 <script> 2 window.history.forward(1); 3 </script> 这个代码的用法就是: 比如,我们此时有两个页面:Login.html 和 Index.html 我们要实现从 Login.html 登陆到 Index.html 注销的话,那么,就把代码放到 Index.html 页面 简单来说,在那个页面注销,就将这个代码放到哪个页面,我在Index.html注销,所以,将代码放到Index.html .

C#后台程序与HTML页面中JS方法互调(功能类似于Ajax中的DWR)

此方法适用于 C#中嵌入WebBrowser(浏览器) 通过浏览器中加载的页面与C#的后台代码进行交互. 一.C#程序 1.在C#窗体中添加WebBrowser(浏览器),将页面的URL添加到浏览器中. 2.窗体代码添加 using System.Runtime.InteropServices;//和Html页面交互使用 在类的上一行添加 [ComVisible(true)]//和Html页面交互使用 在类的构造其中添加 this.webB.ObjectForScripting = this;

JS实现倒计时功能

上午主要编写了倒计时的功能,用了两种算法,一种是最终秒数.分钟数.小时数减去当前的秒.分钟和小时,当然要重点注意的就是借位的问题.另一种算法就是将最终时间转换成秒数,当前时间转换成秒数,相减之后再换算成小时.分钟和秒,再分别显示出来. 下面是我编写的代码: 1 <!DOCTYPE html> 2 <html lang="en"> 3 <head> 4 <meta charset="UTF-8"> 5 <title

node.js实现CURL功能

PHP中的CURL功能很好实现,直接四五行代码封装一下就OK了.node.js中如何实现CURL的功能呢,下面详细介绍. 这里需要用到request这个库,所以先安装此包: npm install request 安装下来之后, 就是代码实现的问题了.示例代码如下(只实现了POST方法): var request = require('request'); request.post( { url:'http://hovertree.com:9095/phpTest.php', form:{ us

一周一个小demo — vue.js实现备忘录功能

这个vue实现备忘录的功能demo是K在github上找到的,K觉得这是一个用来对vue.js入门的一个非常简单的demo,所以拿在这里共享一下. (尊重他人劳动成果,从小事做起~  demo原github地址:https://github.com/vuejs/vue) 一.实现效果 二.代码展示 <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>备忘录&l