数组的常用方法

数组的常用方法
淤白数组的常用方法
数组的声明
1 | // 数组的声明 |
数组的常用方法1 —— 以下4种方法均会改变原数组
数组的push()方法
1
2
3
4
5
6
7// 数组的头尾操作
var arr4 = [1,2,3,4]
var backValue // 接收返回值
// push 尾部推入一项,无返回值
arr4.push(5)
console.log(arr4) // [1,2,3,4,5]数组的pop()方法
1
2
3// pop 尾部去除一项,且将删除的那一项作为返回值
backValue = arr4.pop()
console.log(arr4, backValue) // [1,2,3,4]数组的unshift()方法
1
2
3// unshift 数组头部插入一项
arr4.unshift(0)
console.log(arr4) // [0,1,2,3,4]数组的shift()方法
1
2
3// shift 数组头部去除一项,且将删除的那一项作为返回值
backValue = arr4.shift()
console.log(arr4, backValue) // [1,2,3,4]
数组的常用方法2
splice() 方法 —— 万能方法,arr.splice(索引开始,长度,内容),改变原数组
替换数组的指定项,返回值为被替换掉的项,且返回类型为数组
1
2
3
4var arr1 = ['A','B','C','D','E','F']
var backValue
backValue = arr1.splice(2,3,'AA','BB','CC')
console.log(arr1, '返回值:',backValue) // ['A','B','AA','BB','CC','F'] 返回值:['C','D','E']向数组中增加某些项,返回值为空数组
1
2backValue = arr1.splice(3,0,'1','2','3')
console.log(arr1, '返回值:',backValue) //['A','B','AA','1','2','3','BB','CC','F'] 返回值:['']删除数组的某些项,返回值为被删除的项,且返回类型为数组
1
2backValue = arr1.splice(2,3)
console.log(arr1, '返回值:',backValue) //['A','B','3','BB','CC','F'] 返回值:['AA','1','2']
slice() 方法 —— 类似于字符串.slice() 方法,arr.slice(索引起始,索引结束) ,不包括索引结束的那一项,可以为负数;改变原数组
1
2
3
4// var newArr = arr1.slice(2,5)
// var newArr = arr1.slice(2)
var newArr = arr1.slice(2,-1)
console.log(newArr)
数组的常用方法3
数组 join() 方法,用于数组转为字符串,传参作为每项的连接符,且不改变原数组
1
2
3
4
5
6
7
8var arr = ['A','B','C','D','E','F']
var newArr
newArr = arr.join() // 会携带逗号转为字符串
console.log(newArr) // A,B,C,D,E,F
newArr = arr.join('') //最常用
console.log(newArr) // ABCDEF
newArr = arr.join('☆')
console.log(newArr) // A☆B☆C☆D☆E☆F字符串 split() 方法,用于数组转为字符串,传参作为每项的连接符,且不改变原数组
1
2
3
4
5
6
7var str = '淤泥不染莲,白璧映初心'
newArr = str.split() // 不传参,会将整个str作为数组的一项
console.log(newArr) // ['淤泥不然莲,白璧映初心']
newArr = str.split('') // 传入空串,将每一个字符作为数组的每一项
console.log(newArr) // ['淤','泥','不','染','莲',',','白','璧','映','初','心']
newArr = str.split(',') // 按照指定的字符分割
console.log(newArr) // ['淤泥不染莲','白璧映初心']concat() 方法,用于数组的联结,返回值为联结后的新数组,则此方法不改变原数组
1
2
3
4
5var arr1 = [1,2,3,4]
var arr2 = [5,6,7,8]
var arr3 = [9,10,11,12]
newArr = arr1.concat(arr2,arr3)
console.log(newArr) // [1,2,3,4,5,6,7,8,9,10,11,12]reverse() 方法
1
2newArr = arr1.reverse()
console.log(newArr) // [4,3,2,1]拓展:将字符串 ‘A-B-C-D-E-F-G’进行翻转(不要’-‘)
1
2
3
4
5var str1 = 'A-B-C-D-E-F-G'
var strToArr = str1.split('-') // 将字符串转为数组,且去掉'-'
strToArr.reverse() // 使用数组的 reverse() 方法将数组翻转
var newStr = strToArr.join('') // 将翻转后的数组转为字符串
console.log(newStr)indexOf() 方法, 查找第一个被找到的数组项的索引值,找不到则返回 -1
1
2
3
4var arrIdx = [1,2,3,4,5]
var index = arrIdx.indexOf(3)
var notFound = arrIdx.indexOf('3')
console.log(index,notFound) // 2 -1includes() 方法,判断数组是否包含指定的数组项,返回值为布尔类型(true/false)
1
2
3
4var arrIcd = [1,2,3,4,5]
var includes = arrIcd.includes(2)
var notIcd = arrIcd.includes('2')
console.log(includes,notIcd) true false拓展: 字符串中某个索引位置的字符
1
2
3
4
5var str3 = '淤泥不染莲,白璧映初心'
var num1 = str3[4] // '莲'
var num2 = str3[6] // '白'
var num3 = str3[20] // undefined
console.log(num1,num2,num3)
评论
匿名评论隐私政策
TwikooWaline
✅ 你无需删除空行,直接评论以获取最佳展示效果








