目录:
1.数组方法都有哪些
2.数组方法【一】
一、数组方法都有哪些
join()
push()和pop()
shift() 和 unshift()
sort()
reverse()
concat()
slice()
splice()
indexOf()和 lastIndexOf() (ES5新增)
forEach() (ES5新增)
map() (ES5新增)
filter() (ES5新增)
every() (ES5新增)
some() (ES5新增)
二、数组方法【一】
1、join()
此方法也是将数组转化为字符串:
let arr = [1, 2, 3, 4, 5];
let str1 = arr.toString()
let str2 = arr.toString(',')
let str3 = arr.toString('##')
console.log(str1)// 12345
console.log(str2)// 1,2,3,4,5
console.log(str3)// 1##2##3##4##5
2、push()和pop()
push():此方法是在数组的后面添加新加元素,此方法改变了数组的长度
pop():此方法在数组后面删除最后一个元素,并返回数组,此方法改变了数组的长度
let arr = [1, 2, 3, 4, 5]
arr.pop()
console.log(arr) //[1, 2, 3, 4]
console.log(arr.length) //4
3、shift() 和 unshift()
Array.shift():此方法在数组后面删除第一个元素,并返回数组,此方法改变了数组的长度:
let arr = [1, 2, 3, 4, 5]
arr.shift()
console.log(arr) //[2, 3, 4, 5]
console.log(arr.length) //4
unshift()
let arr = [1, 2, 3, 4, 5]
arr.unshift(6, 7)
console.log(arr) //[6, 7, 2, 3, 4, 5]
console.log(arr.length) //7
4、sort()
如果不传参数,默认情况下数组内的元素会被转换为字符串进行比较,因此一般不推荐直接使用默认的arr.sort()进行排序。
返回值为排序后的新数组。原数组会被改变
注意:sort里接收一个比较参数
var b = [1,2,3]
//升序
b.sort((a,b)=>a-b) //[1, 2, 3]
//降序
b.sort((a,b)=>b-a) //[3, 2, 1]
5、reverse()
反转数组的顺序,并返回重新排序之后的数组, 原数组会被改变
var arr1 = [1,2,3,'red','blue']
arr1.reverse() //["blue", "red", 3, 2, 1]
6、concat()
此方法是一个可以将多个数组拼接成一个数组:
let arr1 = [1, 2, 3]
arr2 = [4, 5]
let arr = arr1.concat(arr2)
console.log(arr)//[1, 2, 3, 4, 5]
7、slice()
剪切数组,返回剪切之后的数组,元素不会改变
a、传入一个参数,表示起始位置,结束位置为最末尾
var colors = ['red','blue','green']
colors.slice(2) //['green']
b、传入2个参数,表示起始位置与结束位置,但不包括结束位置所在的元素
var colors = ['red','blue','green']
colors.slice(1,2) //['blue']
8、splice()
万能方法,可以实现增删改:
let arr = [1, 2, 3, 4, 5];
let arr1 = arr.splice(2, 0 'haha')
let arr2 = arr.splice(2, 3)
let arr1 = arr.splice(2, 1 'haha')
console.log(arr1) //[1, 2, 'haha', 3, 4, 5]新增一个元素
console.log(arr2) //[1, 2] 删除三个元素
console.log(arr3) //[1, 2, 'haha', 4, 5] 替换一个元素
网友评论