es6 方法 数组扩展

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了es6 方法 数组扩展相关的知识,希望对你有一定的参考价值。

1:Array.from()

Array.from()将类数组(array-like)对象与可遍历的对象转化为数组并返回。

let arr = {
  ‘0‘:‘a‘,
  ‘1‘:‘b‘,
  ‘2‘:‘c‘,
  length:3
}
 es5 var arr1=[].slice.call(arr)
  es6   var arr2=Array.from(arr)
 
2:Array.of()
Array.of方法用于将一组值,转换为数组。
Array.of(3, 11, 8) // [3,11,8]
 
3:数组实例的copyWithin()
 将指定位置的成员复制到其他位置(会覆盖原有成员),然后返回当前数组。也就是说,使用这个方法,会修改当前数组。
 
Array.prototype.copyWithin(target, start = 0, end = this.length)
 
target(必需):从该位置开始替换数据。
start(可选):从该位置开始读取数据,默认为0。如果为负值,表示倒数。
end(可选):到该位置前停止读取数据,默认等于数组长度。如果为负值,表示倒数.
 
[1, 2, 3, 4, 5].copyWithin(0, 3)
// [4, 5, 3, 4, 5]
 
4:数组实例的find()和findIndex()
 
数组实例的find方法,用于找出第一个符合条件的数组成员。
找出第一个返回值为true的成员,然后返回该成员。如果没有符合条件的成员,则返回undefined。
 
[1, 4, -5, 10].find((n) => n < 0)
// -5
 
find方法的回调函数可以接受三个参数,依次为当前的值、当前的位置和原数组
 
[1, 5, 10, 15].find((value, index, arr) =>{
 return value > 9;
}) // 10
 
findIndex(),用法与find一致,只不过返回的是下标索引值;
 
eg:
[1, 5, 10, 15].findIndex(function(value, index, arr) {
 return value > 9;
}) // 2


 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

以上是关于es6 方法 数组扩展的主要内容,如果未能解决你的问题,请参考以下文章

ES6-05:数组的扩展

ES6数组扩展

ES6数组扩展运算符(Rest+Spread)类方法原型方法

es6 数组和字符串的扩展方法

es6 数组和字符串的扩展方法

es6 方法 数组扩展