数组方法集合

改变原数组的方法
push,pop,shift,unshift,sort,reverse,splice
var  arr = [];
arr.push(10);在数组的最后一位添加数据10,添加个数多少都可以,返回长度
arr.push(4,3,2,'nihao');
arr.pop()//传参没用,把最后一位进行剪切
arr.shift()//在数组前面剪切,传参没用,返回剪切的元素
arr.unshift()//在数组前面添加,添加个数多少都可以,返回长度
arr.reverse()//将原数组反转顺序
arr.splice()//切片,参数(从第几位开始,截取多少的长度,在切口处插入新的数据)
负数代表倒数第几位,
var arr = [4, 1, 9, 2, 3, 8];
如:arr.splice(-1,2)[8]           arr.splice(-1,3)[3]
arr.splice(1,2);//返回截取的元素
var arr = [1,3,10,-1,0,9];
arr.sort()改变数组的顺序,升序.arr.sort();直接用,不能对超过10以上的数字排序。
  2.看返回值1)当返回值为负数时,那么前面的数放在前面
           2)为正数,那么后面的数放在前
           3)为0 不动
不改变原数组的方法
arr1.concat(arr2);合并数组,不改变原数组,返回合并后的数组
slice方法用于复制目标数组的一部分,返回一个新数组,原数组不变。
如果slice方法的参数是负数,则表示倒数计算的位置。
join 以指定的参数作为分隔符,将所有数组成员链接为一个字符串返回,如果不提供参数,默认用逗号分隔,
数组新增方法

静态方法
Array.isArray(arr)
Array.isArray方法返回一个布尔值,表示参数是否为数组。它可以弥补typeof运算符的不足
typeof运算符只能显示数组的类型是Object,而Array.isArray方法可以识别数组

实例(对象)方法
map方法将数组的所有成员依次传入参数函数,然后把每一次的执行结果组成一个新数组返回
map方法接受一个函数作为参数。该函数调用时,map方法向它传入三个参数:当前成员、当前位置和数组本身

forEach方法与map方法很相似,也是对数组的所有成员依次执行参数函数。但是,forEach方法不返回值,只用来操作数据。
这就是说,如果数组遍历的目的是为了得到返回值,那么使用map方法,否则使用forEach方法
注意,forEach方法无法中断执行,总是会将所有成员遍历完。如果希望符合某种条件时,就中断遍历,要使用for循环

filter()
filter方法用于过滤数组成员,满足条件的成员组成一个新数组返回
它的参数是一个函数,所有数组成员依次执行该函数,返回结果为true的成员组成一个新数组返回。该方法不会改变原数组。
filter方法的参数函数可以接受三个参数:当前成员v,当前位置i和整个数组。

reduce方法依次处理数组的每个成员,最终累计为一个值。reduce是从左到右处理(从第一个成员到最后一个成员)
reduce方法参数是一个函数,该函数接受以下两个参数。
1累积变量,默认为数组的第一个成员
2当前变量,默认为数组的第二个成员

indexOf(),lastIndexOf()
indexOf方法返回给定元素在数组中第一次出现的位置,如果没有出现则返回-1。
[NaN].indexOf(NaN) // -1
[NaN].lastIndexOf(NaN) // -1
这是因为这两个方法内部,使用严格相等运算符(===)进行比较,
而NaN是唯一一个不等于自身的值

//find参数是一个函数,函数的返回值是查找条件,返回找到的对象,找不到返回undefined

//findIndex找到满足条件的元素的下标,找不到返回-1

some 判断数组中是否有一些元素 满足条件,返回布尔值

every 判断数组中所有的元素是否 满足条件,返回布尔值

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值