js数组方法总结

js数组方法总结

前沿

​ 最近有点时间,总结一下js数组的基础用法,加强一下记忆,上学时学这些基础的时候总觉得啥都不能做,学这干啥,还不如HTML来的快,敲代码的乐趣不就是能展示出来么?直到工作以后才能明白基础到底有多么重要。这可能也就为什么我成为前端的原因吧,太废了,废话不多说,开始总结。。。

数组是什么?

示例:

let arr = [1, 2, 3, 4];
let List = [
    {
        id:1
    },
    {
        id:2
    }
]

1.数组的方法

join方法

​ 按照指定的分隔符,将数组分割成字符串;返回分隔后的字符串。

示例:

let arr = [1,2,3,4]
let data = arr.join('/')
console.log(data) // 1/2/3/4  
pop方法

​ 从数组中删除最后一个元素;返回被删除的元素。

示例:

let arr = [1,2,3,4]
let data = arr.pop()
console.log(data) // 4
push方法

​ 向数组的末尾添加一个或更多元素;返回push完成后数组的长度。

示例:

let arr = [1]
let data = arr.push(2,3,4)
console.log(data,arr) // 4  [1, 2, 3, 4]
shift方法

​ 删除数组的第一个元素;返回被删除的元素。

示例:

let arr = [1,2,3,4]
let data = arr.shift()
console.log(data,arr) // 1  [2, 3, 4]
pop方法

​ 删除数组的最后一个元素;返回被删除的元素。

示例:

let arr = [1,2,3,4]
let data = arr.pop()
console.log(data,arr) // 4  [1,2, 3]
unshift方法

​ 向数组开头添加新元素;返回新数组的长度。

示例:

let arr = [1,2,3,4]
let data = arr.unshift(0)
console.log(data,arr) // 5  [0,1,2,3,4]
slice方法

​ 截取数组,可接受俩个参数 slice(‘开始参数’,‘结束参数’),结束参数可省略;返回截取后的新数组。

示例:

let arr = [1,2,3,4,5,6,7]
let data = arr.slice(2)
let data2 = arr.slice(2,4)
console.log(data,data2,arr) // [3,4,5,6,7]  [3,4] [1,2,3,4,5,6,7]
splice方法

​ 向数组添加新项,拥有三个或更多参数 第一个参数定义了应添加新元素的位置。第二个参数定义应删除多少元素。其余参数定义要添加的新元素。返回一个包含已删除项的数组

示例:

let arr = [1,2,3,4]
let data = arr.splice(0,2)
arr.splice(2,2,5,6)
console.log(data,arr) // [1,2] [ 3,4,5,6]
concat方法

​ 合并数组,返回新合并后的数组

示例:


sort方法

​ 对数组进行排序,正序或倒序,改变原数组;

示例:

let arr = [7,3,9,5,4,1,2];
let data = arr.sort((a,b)=>{
	return a - b
})
console.log(data,arr) [ 1,2,3,4,5,7,9]  [ 1,2,3,4,5,7,9]

let data2 = arr.sort((a,b)=>{
	return b - a
})
console.log(data2,arr) [9,7,5,4,3,2,1]  [9,7,5,4,3,2,1]
 
severse方法

​ 颠倒数组,返回新数组,不改变原数组;

示例:

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

2.数组更上一层楼

forEach

遍历数组

const arr = [1, 2, 3, 4, 5] 
arr.forEach((item, index) => 
{   
	console.log(item, index) 
})

1 0 
2 1 
3 2 
4 3 
5 4 

map方法

返回处理过的新数组

const arr = [1, 2, 3, 4, 5]
const mapArr = arr.map((num, index, arr) => 2 * num)
console.log(mapArr)
[ 2, 4, 6, 8, 10 ]

filter方法

返回过滤后的新数组

const arr = [1, 2, 3, 4, 5]
const filterArr = arr.filter((num, index, arr) => num > 3)
console.log(filterArr)
[ 4, 5 ]
some方法

只要有一个为true,就返回true,一个都true都没有,就返回false

const arr = [1, 2, 3, 4, 5]
const someArr = arr.some((num, index, arr) => num == 3) console.log(someArr) true
every方法

所有都为true才返回true

const arr = [1, 2, 3, 4, 5]
const everyArr = arr.every((num, index, arr) => num == 3) console.log(everyArr) false

find 和 findIndex方法

find:找到返回被找元素,找不到返回undefined

findIndex:找到返回被找元素索引,找不到返回-1

  const arr = [
    {
      id:0,
      value:'aaa'
    }
    {
      id:1
      value:'bbb'
    }
    {
      id:2
      value:'ccc'
    }
  ]

const findArr = arr.find(({ id }) => id === 1) 
const findIndexArr = findArr.findIndex(({ id }) => id === 2) 
console.log(findArr) // { id: 1, value: 'bbb' } 
console.log(findIndexArr) // 2
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值