数组基本方法
push : 添加元素到数组的末尾,会改变原数组
push: push() 方法将一个或多个元素添加到数组的末尾,并返回新数组的长度。语法为: arr.push(element1, ..., elementN)
pop: 删除数组末尾的元素,会改变原数组
pop:pop()方法从数组中删除最后一个元素,并返回该元素的值(当数组为空时,返回undefined)。此方法更改数组的长度。 语法为:arr.pop()
shift: 删除数组最前面(头部)的元素,会改变原数组
shift :shift() 方法从数组中删除第一个元素,并返回该元素的值(当数组为空时,返回undefined)。此方法更改数组的长度。语法为: arr.shift()
unshift: 添加元素到数组的头部,会改变原数组
unshift: unshift() 方法将一个或多个元素添加到数组的开头,并返回新数组的长度。 语法为: arr.unshift(element1, ..., elementN)
indexOf 获取某个元素在数组中的索引
splice
splice() 方法通过删除现有元素和/或添加新元素来更改一个数组的内容,并返回由被删除的元素组成的一个数组。如果只删除了一个元素,则返回只包含一个元素的数组。如果没有删除元素,则返回空数组。 语法为 : array.splice(start)、 array.splice(start, deleteCount) 、array.splice(start, deleteCount, item1, item2, ...)
start: 指定修改的开始位置(从0计数)。如果超出了数组的长度,则从数组末尾开始添加内容;如果是负值,则表示从数组末位开始的第几位(从1计数);若只使用start参数而不使用deleteCount、item,如:array.splice(start) ,表示删除[start,end]的元素。
deleteCount :可选。整数,表示要移除的数组元素的个数。如果deleteCount被省略,则其相当于(arr.length - start)。
vitem1, item2, ...** :可选。要添加进数组的元素,从start 位置开始。如果不指定,则 splice() 将只删除数组元素。
-
array.splice(start)
image.png array.splice(start, deleteCount)
- array.splice(start, deleteCount, item1, item2, ...)
用 splice函数分别实现 push、pop、shift、unshift方法
- 用splice实现push:将删除个数设为0,然后往数组添加元素就可以了,例如:
- 用splice实现pop:
- 用splice实现shift:
- 用splice实现unshift:
遍历数组
var arr = ['apple','orange'];
arr.forEach(function(item,index,arr){
console.log(index,item)
})
// 0 "apple"
// 1 "orange"
slice() 浅拷贝
slice() 方法返回一个从开始到结束(不包括结束)选择的数组的一部分浅拷贝到一个新数组对象。且原始数组不会被修改。