indexOf()方法

  • 作用:查找数组或者有没有某一个数据(从左往右查找)
  • 语法:
    • 数组.indexOf(要查找的数据)
    • 数组.indexOf(要查找的数据,从哪个索引开始) 第二个参数不写默认从0开始
  • 返回值: 一个数字
    • 如果查找了数据,那么返回的是第一个找到数据的索引
    • 如果没有,返回-1
1
2
3
4
5
6
7
let arr=['hello','world','你好']
let res = arr.indexOf('world')
console.log(res) //返回索引 1

let arr=['hello','world','你好']
let res = arr.indexOf('111')
console.log(res) //返回 -1

lastIndexOf()

  • 作用:查找数组或者有没有某一个数据(从右往左查找),返回正常的索引值
  • 语法:
    • 数组.lastIndexOf(要查找的数据)
  • 返回值: 一个数字
    • 如果查找了数据,那么返回的是第一个找到数据的索引
    • 如果没有,返回-1

push()

  • 作用:在数据最后添加一个或多个元素(数组变大),返回添加后,数据的长度(arr.length)
1
2
3
4
5
6
/*把1-100中能被3与5整除的数放在数组中*/
for(var i = 1;i<=100;i++){
if(i%3==0&&i%5==0){
arr.push(i);
}
}

pop()

  • 作用: 取出数组的最后一个元素,并返回这个元素(返回取出的这个元素),空数组使用pop方法,返回undefined
1
2
3
4
let arr=[1,2,3,4,5]
let a = arr.pop()
console.log(a) // 返回 5
console.log(arr) //返回 [1,2,3,4]

unshift 和push相反 从数组的最后一个位置的前面开始添加,返回数据的长度

1
2
3
let arr=[1,2,3,4]
arr.unshift("新加的")
console.log(arr) //返回 ['新加的',1,2,3,4]

shift 和pop相反 从数组的第一个位置开始取,返回取出的值

1
2
3
let arr =[1,2,3,4,5]
arr.shift()
console.log(arr) //返回 1

reverse 反转方法 即调换数组的顺序 返回值:反转后的数组

1
2
3
let arr =[1,2,3,4,5]
arr.reverse()
console.log(arr) //返回 [5,4,3,2,1]

sort排序方法 对数组排序 返回值:排序好的数组

  • 无参数 arr.sort() 不传参 ,从第一位开始比较ASCII码值

  • 有参数 arr.sort(function(){}) ,如果想对数组大小进行正序或倒序进行排序,需要往sort方法内传入回调函数(sort每次排序的根据),根据每次返回的值决定

    1
    2
    3
    4
    5
    6
    arr.sort(function(val1,val2){
    return val1 - val2 //正序
    })
    arr.sort(function(val1,val2){
    return val2 - val1 //倒序
    })

    splice()方法 截取数组,截取以后再截取位置替换新的内容,改变原数组,返回新数组

  • 语法:
    数组 . splice(从哪个索引开始,截取多少个)
    返回值:新数组,数组内容是被截取出来的数据,如果都不截取,返回一个空数组

    1
    2
    3
    4
    let arr =['hello','world','你好']
    let res = arr.splice(2,1)
    console.log('res=',res) //返回 res=['你好']
    console.log('arr=',arr) //返回 arr=['hello','world']