js数组之
1.concat()
语法
array1.concat(array2,array3,...,arrayX)
参数
参数可以是具体值也可以是数组对象,可以是任意多个
返回值
返回的是一个新的数组
实例操作
let arr =[1,2,3,4]
let arr1 = [5,6,7,8]
let str ='name'
console.log(arr.concat(arr1))
console.log(arr.concat(str))
2.copyWithin()
语法
array.copyWithin(target, start, end)
参数
target
复制到指定目标索引位置
start
可选择,元素复制的起始位置
end
可选择,停止复制的索引位置,默认为array.lenght,如果为负值,表示倒数
返回值
在原数组中修改,会改变原数组
实例操作
let arr =[1,2,3,4,5]
console.log( arr.copyWithin(2))
console.log(arr)
let arr =[1,2,3,4,5]
console.log( arr.copyWithin(2,1,2))
console.log(arr)
target代表的是复制的位置,
start,end代表的是需要复制的元素满足的start<=x<end,记住不包含end
3.entries()方法
返回一个可迭代对象
语法
array.entries()
返回值
不会改变数组,放回的是一个新的可迭代对象
实例操作
let names = ['tony','mike','jone']
let x=names.entries()
console.log(x.next())
console.log(x.next())
console.log(x.next())
console.log(names)
生成的是可迭代对象,跟平时接触的对象不太一样的,不了解的朋友,可以看看es6的迭代器
4.fill()方法
顾名思义就是填充的意思
语法
array.fill(value, start, end)
参数
value
需要填充的值
start
可选,开始填充的位置
end
可选,停止填充的位置(默认为array.length)
返回值
返回一个被改变的值
实例操作
let arr = [1,2,3,4,5,6]
console.log(arr.fill(6))
5.join
将一个数组转换成字符串,不会改变原数组
语法
array.join(separator)
参数
可选,指定要使用的分隔符,如果省略,则默认使用逗号分隔符
实力操作
let arr =['h','l','l','0']
console.log(arr.join(""))
console.log(arr)
6.pop
删除数组的最后一个元素并返回删除的元素,会改变数组
语法
array.pop()
实例操作
let arr =['h','l','l','o']
console.log(arr.pop())
console.log((arr))
7.push
往数组中添加元素
语法
array.push(item1, item2, ..., itemX)
返回值
数组的新长度
实例操作
let arr =[1,2,3,4]
console.log(arr.push(5))
console.log((arr))
8.reverse
反转数组
语法
array.reverse()
返回值
返回反转后的数组,会改变原数组
实例操作
let arr =[1,2,3,4]
console.log(arr.reverse())
console.log((arr))
9.shift
删除第一个元素并返回该元素的值
语法
array.shift()
实例操作
let arr =[1,2,3,4]
console.log(arr.shift())
console.log((arr))
10.slice
选取数组的一部分,并返回一个新数组
语法
array.slice(start, end)
参数
start
开始选取的位置,可选,默认从第一个元素开始,如果是负数则倒过来,从末尾开始数
end
结束选取的位置,可选,默认在数组长度的位置,如果是负数则倒过来,从开头开始数
返回值
新数组
实例操作
let arr =[1,2,3,4]
console.log(arr.slice(1,3))
console.log((arr))
11.sort
排序,会改变原来数组
语法
array.sort(function)
参数
回调函数function有a,b两个参数
①不写
默认升序
②返回a-b
升序
③返回b-a
降序
返回值
排序后的数组
实例操作
let arr =[1,3,8,5,6,6,3,2,7,8]
console.log(arr.sort())
console.log(arr)
```![在这里插入图片描述](https://img-blog.csdnimg.cn/20201107124922564.png#pic_center)
```javascript
let arr =[1,3,8,5,6,6,3,2,7,8]
console.log(arr.sort((a,b)=>{
return a-b
}))
console.log(arr)
let arr =[1,3,8,5,6,6,3,2,7,8]
console.log(arr.sort((a,b)=>{
return b-a
}))
console.log(arr)
12.splice()
删除相应位置的元素,在往该位置添加元素,会改变原数组
语法
array.splice(index,howmany,item1,.....,itemX)
参数
index
删除元素的开始位置
howmary
可选,删除的个数,没有填写,则默认删除到最后
item1…itemX
可选,要添加的元素,如果没有填写则只是删除,没有往里面添加元素
返回值
返回被删除元素的数组
实例操作
let arr =['h','l','l','o']
let arr1 = ['h','l','l','o']
console.log(arr.splice(2,1))
console.log(arr)
console.log(arr1.splice(2,1,'h'))
console.log(arr1)
13.unshift
向数组的开头添加一个或多个元素,并返回新数组的长度,会改变原数组
语法
array.unshift(item1,item2, ..., itemX)
实例操作
let arr = [1,2,3,4,5,6]
console.log(arr.unshift(7,8,9))
console.log(arr)