
// 创建空数组
var list = []
// 使用 for 循环添加元素
for (var i = 1i <= 10i++) {
list.push(i)
}
在上面的代码中,我们使用了 push 方法向数组中添加元素。该方法会在数组的末尾添加一个或多个元素,并返回修改后数组的长度。例如,在上面的代码中,每次循环时,都会将当前循环变量 i 的值添加到 list 数组中。
您也可以使用 for...of 循环来更简单地添加元素。例如:
// 创建空数组
var list = []
// 使用 for...of 循环添加元素
for (var i of [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]) {
list.push(i)
}
在这种情况下,我们在 for...of 循环的括号内直接指定了要添加的元素。该循环会依次遍历数组中的元素,并将它们添加到 list 数组中。
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.removeIndexwww.bjldfw.comindexOf(obj))
},
this.indexOf=function(obj){
for(var i=0i<this.arr.lengthi++){
if www.bjldfw.comarr[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=0i<list.size()i++){
document.writeln(list.get(i))
}
document.writeln(list.contains("2"))
</script>
</head>
<body>
</body>
</html>
Vue 将被侦听的数组的变更方法进行了包裹,所以它们也将会触发视图更新。这些被包裹过的方法包括:push()pop()
shift()
unshift()
splice()
sort()
reverse()
以上七个数组都会改变原数组,下面来分别讲解它们的区别:var list = [3,4,5,6]
1. push() 向数组的尾部添加若干元素,并返回数组的新长度;
list.push(7,8) //返回数组的长度6
list //list=[3,4,5,6,7,8]
2. pop() 从数组的尾部删除一个元素(删且只删除一个元素),返回被删除的元素
list.pop() //返回删除的数组6
list //list=[3,4,5]
3. unshift() 向数组的头部添加若干元素,返回数组的新长度
list.unshift(1,2) //返回数组的长度6
list //list=[1,2,3,4,5,6]
4. shift() 从数组的头部删除一个元素(删且只删除一个元素),返回被删除的元素
list.shift() //返回删除的元素3
list //list=[4,5,6]
ps:pop()和shift()方法不接受传参,传参了也没有什么用
空数组可以删除,不报错,但返回undefined
5. splice() 该方法有如下3种用法:删除 —— 可以删除任意数量的项,只需要指定2个参数:要删除的第一项的位置和要删除项的项数。
插入 —— 可以向指定位置插入任意数量的项,只需要提供3个参数:插入起始位置、0(要删除的项数)和要插入的项。 如果要插入多个项,可以再传入第四、第五,一直任意多个项。
替换 —— 可以向指定位置插入任意数量的项,且同时删除任意数量的项,只需要指定3个指定参数:起始位置、要删除的项数和要插入的任意数量项。 插入的项数是不必与删除的项数相等。
var colors = ["red", "green", "blue"]
var removed = colors.splice(0,1)//删除第一项
alert(colors)//green,blue
alert(removed)//red,返回数组中值包含一项
removed = colors.splice(1, 0, "yellow", "orange")//从位置1开始插入两项
alert(colors)//green,yellow,organge,blue
alert(removed)//返回的是一个空数组
removed = colors.splice(1, 1, "red", "purple")//插入两项,删除一项
alert(colors)//green,red,purple,orange,blue
alert(remove)//yellow, 返回的数组中只包含一项
6. sort() 该方法用于对数组的元素进行排序
list:["George","John","Thomas","James","Adrew","Martin"];
list.sort()//["Adrew", "George", "James", "John", "Martin", "Thomas"]
ps: 因为sort()排序默认的是根据字符串UniCode码进行排序,所以如果要对数字进行排序的话,参数要传递一个比较函数
list:["100","24","489","22","307","6"];
sortNumber(a,b){
return a-b
};
list.sort(sortNumber) //["6", "22", "24", "100", "307", "489"]
7. reverse() 该方法用于颠倒数组中元素的顺序
list:["kwz","John","Thomas","James","Adrew","Martin"]
list.reverse()//["Martin", "Adrew", "James", "Thomas", "John", "kwz"]
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)