ES6—数组的扩展

1、Array.from(obj, func)

(1)Array.from用于将两类对象转化成真正的数组

  • 类似数组的对象
    任何有length属性的对象,都可以通过Array.from方法转化为数组
  • 可遍历的对象

(2)对于还没有部署该方法的浏览器,可以使用Array.prototype.slice方法替代

const toArray = (() => Array.from ? Array.from : obj => [].slice.call(obj))

(3)func类似于map的作用可对每一项进行操作,返回至新的数组

特殊使用:
当计算字符串长度计算中文长度会计算成两个字符,可以通过将其转化成数组之后,再获取length,从而获取到准确的长度

function countSymbols(string) {
    return Array.from(string).length;
}

2、 Array.of()

Array.of方法用于将一组值转换成数组
为了弥补Array()的不足,因为Array()对于参数不同行为会有所差异
Array当只有一个参数时会将该参数当成数组的长度进行处理,返回一个长度为n的,所有项都为空的数组,如:Array(3) [ , , ]

3、copyWithin(target, start = 0, end = this.length)

target表示开始替换数据的位置
start表示开始从该位置粘贴数据
end表示粘贴结束的位置

4、find 和 findIndex

(1)find

找出第一个返回true的成员

(2)findIndex

找出第一个返回true的成员的位置

5、fill(number, start, end)

fill方法表示使用给定值填充数组,number为指定值,start指定开始填充的位置,end指定结束填充的位置。

['a', 'b', 'c'].fill(7) //[7, 7, 7]

6、entries()、keys()、values()

(1)entries()

[
[key0, value0],
[key1, value1],
[key2, value2],
]

(2)keys()

[key0, key1, key2]

(3)values()

[value0, value1, value2]

7、includes()

返回一个布尔值表示数组是否包含指定值

8、对数组空位的处理

空位没有值,并不是undefined,for index in arr返回false
es5对空位的处理很不一致,大多数情况下会忽略空位
es6规定将所有的数组空位处理为undefined

9、数组推导

数组的推导是指在数组中可以使用for … of 或if等直接对数组元素进行运算,es6尚未支持此功能

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值