当前位置 : 主页 > 网络编程 > JavaScript >

Javascript数组常用方法你都知道吗

来源:互联网 收集:自由互联 发布时间:2023-01-30
我用这些方法主要从五个方面去学习。 1.方法是干什么的。 2.谁能用 (当然是数组啦)。 3.有没有返回值,返回值是什么。 4.修不修改原来的对象。 5.如何使用。 接下来就是干货了。 1

我用这些方法主要从五个方面去学习。

1.方法是干什么的。

2.谁能用 (当然是数组啦)。

3.有没有返回值,返回值是什么。

4.修不修改原来的对象。

5.如何使用。

接下来就是干货了。

1.push 向数组内添加一个或多个元素,添加到数组的最后面,方法返回值是新数组的长度。

arr.push(200)
arr.push(200,2,32)

2.pop 删除数组末尾的一个元素,不需要传参,方法返回值是被删除的元素 。

arr.pop()

3.unshift 向数组中添加一个或多个元素,添加到最前面,返回值是新数组的长度。

arr.unshift(1)arr.unshift(1,2)arr.unshift(1)
arr.unshift(1,2)

4.shift 删除数组最前面的一个元素 返回值是被删除的元素。

arr.shift()

5. concat 拼接两个数组,返回拼接后的数组,原数组不变。

let arr1 = [1,2]
let arr2 = [2,3]
arr1.concat(arr2)
console.log(arr1); // [1,2]
console.log(arr1.concat(arr2)); // [1,2,2,3]

6. reverse 数组颠倒,返回颠倒后的数组,原数组改变。

arr.reverse()

7.slice 数组的截取,包括开头,不包括结尾,返回截取后的数组,原数组不变。

let arr = [1,2,3,4,5,6]
// 填两个参数 a,b 从a截取到b 不包括b
// 填一个参数 a 从a截取到末尾
// 不填参数 从0截取到最后
//截取arr 里面的 3-5 也就是数组下标2-4 但是第二个参数不包括 所以就是 2-5
arr.slice(2,5)

8.splice 数组的添加或者删除,返回被删除的元素组成的数组,原数组改变。

//用法 splice(a,b,c)
//a 表示添加或者删除的开始的下标
//b 表示删除的个数 不想删除只想添加 b写成0
//c 表示添加的元素 添加的元素可以是多个 c,d,e 不添加就不用写c
var arr = [1,2,3,4,5,6]
// 把4删除 换成10
arr.splice(3,1,10)

9.join 将数组内的所有元素以某个值进行字符串拼接,默认是以 , 拼接。返回值是拼接的字符串,原数组不变。

let arr = [1,2,3,4,5,6]
arr.join()
arr.join('-')

10.indexOf 检测数组中是否存在某个元素 ,存在的话返回第一次找到的下标,不存在返回 -1,原数组不变。

let arr = [1,2,3,4,5,6]  
let ind = arr.indexOf(5)

11.lastIndexOf 和 indexOf用法一样,从数组后面开始找。

12.includes 检测数组中是否存在某个元素 存在返回 true 不出在返回false 用法和indexOf一样。

13.sort 对数组进行排序,返回排序后的数组,原数组改变。

// 汉字看笔画 英文字母看因为字母顺序
// 默认排序是按照首字符的顺序开始排序的
let arr = [2,3,5,4,9,6]
arr.sort()
//sort可以写函数
// a,b 代表的就是数组中相邻的两个数
// 从小到大排
arr.sort(function(a,b){
    return a - b
})

14.every 检测数组内的所有元素是否满足某个条件, 有一个必须参数,返回值是布尔值。

let arr = [100,15,50,110]
let myarr = arr.every(function(el){
    return el>14
})
console.log(myarr) //true

 15.some 检测数组内是否有元素满足某个条件,有一个必须参数,返回值是布尔值。

var arr = [100,15,50,110]
var myarr1 = arr.some(function(el){
      return el>100
})
console.log(myarr1) //true

16.find 返回数组中匹配的 第一个元素 的值,没有返回 undefined,有一个必须参数。

var arr = [100,15,50,110]
var myarr2 = arr.find(function(el){
      return el > 10
})
console.log(myarr2) // 100

17.findIndex 方法同find 返回值是对应的索引值。

18.filter 返回符合条件的元素形成一个新数组 ,返回值是一个数组

var arr = [100,15,8,50,110]
var myarr3 = arr.filter(function(el){
      return el<18
})
console.log(myarr3) //[15,8]

 19.map 创建一个数组,该数组中每个元素是调用过函数之后返回的值。

var arr = [100,15,8,50,110]
var arr5 = arr.map(function(el){
    return el*1+5   
})
console.log(arr5); //[105, 20, 13, 55, 115]

 20.reduce 用这个方法可以实现以上的所有方法 比如数组内数累加,返回值是单个数

// reduce(函数,最终结果的初始值)
// 每次遍历的函数,有四个参,每次查询数组的元素时执行的函数
// function(res,ele,index,array)
// res 结果变量
// ele 数组内元素
// index 对应的索引
// array 原数组
// 必须设置返回值,上一次返回的值是res的值,最后返回值是最终结果,也是reduce函数的返回值。
let arr = [100,15,8,50,110]
// res 是自己创的累加器 ele是当前值
let total = arr.reduce(function(res,ele){
    return res + ele
},0)

总结

本篇文章就到这里了,希望能够给你带来帮助,也希望您能够多多关注自由互联的更多内容! 

网友评论