js数组常用方法

js数组常用的方法

1. 创建数组的方法

  1. 字面量创建数组
  • var arr = []
  • var arr = [1, 2, 3 ]
  1. 构造函数创建数组
  • var arr = new Array() // arr.length = 0
  • var arr = new Array(3) // arr.length = 3
  • var arr = new Array(1, 2, 3) // arr = [1, 2, 3], arr.length = 3

2. 常用数组的方法

  1. 数组增删改查的方法
  • push() -------追加至原数组末尾,原数组被修改
    – param(s):要增加的数组元素(可以多个),
    – return:修改后的数组长度
  • pop() ------删除数组最后一个元素,原数组被修改
    – param(s): 无
    – return:被删除的数组元素,数组为空返回undefined
  • unshift() -------添加至原数组开头,原数组被修改
    – param(s):要增加的数组元素(可以多个),
    – return:修改后的数组长度
  • shift() ------删除数组开头一个元素,原数组被修改
    – param(s): 无
    – return:被删除的数组元素,数组为空返回undefined
  • splice() ------ 可实现数组元素的删除、插入和替换
    –param(s):
    删除:2个参数,要删除项的数组元素位置和要删除的元素个数,例如:[1, 2, 3].splice(0,2) // 删除开头两项
    插入:3个或者3个以上参数,起始数组元素位置、 0(要删除的元素个数)和要插入的数组元素(可连续多个),例如:[1, 2, 3].splice(1, 0, 4, 5) // [1, 4, 5, 2, 3]
    替换:3个或者3个以上参数,起始数组元素位置、要删除的元素个数和要插入的任意数量的数组元素
    –return: 被删除的数组元素以数组的方式返回
  • indexOf() ------顺序查找
    – param(s): 要查找的元素和查找的起始位置索引(可选参数)
    – return:查找到要元素的起始位置索引,或者未查找到时返回-1
  • lastIndexOf() --------倒序查找
    – param(s): 要查找的元素和查找的起始位置索引(可选参数)
    – return:查找到要元素的起始位置索引,或者未查找到时返回-1
  • concat() --------数组合并,不会修改原数组
    – param(s):
    0个参数:复制原数组并返回,例如:[1, 2].concat() // [1, 2] ----为原数组的一个副本
    1个或者多个数组元素:[1, 2].concat(3,4,5) // [1, 2, 3, 4, 5]
    1个或者多个数组:[1,2].concat([5,6],[7,8]) // [1, 2, 5, 6, 7, 8]
    元素和数组混合:[1,2].concat(3,4,[5,6],[7,8]) // [1, 2, 3, 4, 5, 6, 7, 8]
    – return: 合并后的新数组
  • slice() -------数组截取
    – param(s):
    0个参数:复制原数组并返回(浅拷贝)
    1个参数或者2个参数:起始位置索引和终止位置索引
    – return: 通过索引截取到的新数组
  1. 数组遍历的方法
  • for循环遍历
var arr = [1,2,3];
for(var i= 0; i < arr.length; i++) {
	console.log(arr[i]);
}
  • forEach()
    –param(s): 参数类型为Function,Function的参数为数组元素(可选),数组索引(可选)和数组本身(可选)
    – return: 无返回值
  • map() ------- “映射”功能,对数组中的每一项运行给定函数,返回每次函数调用的结果组成的数组。
  • filter() ------- “过滤”功能,数组中的每一项运行给定函数,返回满足过滤条件组成的数组。
  • every() ------ 判断数组中每一项都是否满足条件,只有所有项都满足条件,才会返回true。
  • some() ------ 判断数组中是否存在满足条件的项,只要有一项满足条件,就会返回true。
  1. 数组排序的方法
  • sort()
    – 默认会调用每个数组项的 toString()转型方法,然后比较得到的字符串,以确定如何排序。
var arr1 = ["a", "d", "c", "b"];
console.log(arr1.sort()); // ["a", "b", "c", "d"]
arr2 = [13, 24, 51, 3];
console.log(arr2.sort()); // [13, 24, 3, 51]

– 数组元素按数值大小排序

// 升序排列
let arr = [3, 2, 1]
arr.sort(function(a,b){return a-b})   //  [1, 2, 3]
// 倒序排列
let arr = [1, 2, 3]
arr.sort(function(a,b){return b-a})   //  [3, 2, 1]
  1. 数组去重
let arr = [1, 2, 3, 1, 2, 3, 1, 1, 2]
let tempArr = [...new Set(arr)]    // [1, 2, 3]
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值