ES6 - 数组

数组的方法

方法描述
concat()链接两个过着更多的数组,并返回结果
join(x)将数组以x分隔符分割为字符串
pop()删除并且返回数组的最后一个元素
push()数组末尾添加元素
reverse()点到数组中元素的顺序
shift()删除并返回数组的第一个元素
slice()对某个已有的数组返回选定的元素
sort()对元素进行排序
splice()删除元素,并向数组添加新元素
toSource()返回该对象的源代码
toString()把数组转换为字符串,并返回结果
toLocaleString()把数组转换为贝蒂数组,并返回结果
unshift在数组开头添加一个或者更多元素,返回新的数组
indexOf查找数据在数组中是否存在,返回下标

ES6数组新增方法

方法描述
扩展运算符可以展开数组、对象
apply将数组转换为函数的参数
call
bind
form将类数组转换为真正的数组
of用于将一组值转换为数组
copyWithin数组实例的方法,将指定位置成员复制到其他位置,会覆盖原有成员,然后返回当前数组
find返回满足条件的第一个项
findIndex返回满足条件的第一个项的下标
entries返回一个二维数组 [ key:[val]]
keys找到数组中所有项的键
values找到数组中所有项的值
includes返回一个布尔值,表示某个数组是否包含给定的值
flat()降维,只降低一维
flatMap()对每个原数组成员执行一个函数
forEach数组遍历
filter过滤数组,通过条件返回满足条件的成员,保存到数组当中
every一假为假,全真为真
reduce求和等
some全假为假,一真为真
map遍历返回新数组

二维数组转一维数组

var arr = [1, [2, 3], [4, 5]];
  • 方式一 : 利用Array.proptype.flat()
arr.flat()
  • 方式二: 使用reduce遍历数组作数组合并
const newArr = arr.reduce((total, val) => {
  return total.concat(val);
}, []);

console.log(newArr);
  • 方式三: 利用字符串的特性实现
arr.join().split()
  • 方式四: 递归遍历二维数组,判断项是否是数组,然后合并到新的数组当中
function flatArray(array) {
  return [].concat(
    ...array.map((arr) => {
      return Array.isArray(arr) ? flatArray(arr) : arr;
    })
  );
}
  • 方式五:
function flatArray(array) {
  return Array.prototype.concat.apply([], array);
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值