美文网首页JS
ES6新增新操作数组的方法

ES6新增新操作数组的方法

作者: rebirth重生A | 来源:发表于2019-02-28 19:31 被阅读0次

接上篇数组操作方法,补充es新增操作数组的方法

1.find(),传入一个回调函数,找到数组中符合当前搜索规则的第一个元素,返回它,并且终止搜索

const arr = [1, "2", 3, 3, "2"]

console.log(arr.find(n => typeof n === "number")) // 1


2.findIndex(),传入一个回调函数,找到数组中符合当前搜索规则的第一个元素,返回它的下标,终止搜索

const arr = [1, "2", 3, 3, "2"]

console.log(arr.findIndex(n => typeofn === "number")) // 0


3.fill(),用新元素替换掉数组内的元素,可以指定替换下标范围。

arr.fill(value, start, end)


4.from(),将类似数组的对象(array-like object)和可遍历(iterable)的对象转为真正的数组

const bar = ["a", "b", "c"];

Array.from(bar);

// ["a", "b", "c"]

Array.from('foo');

// ["f", "o", "o"]


5.of(),用于将一组值,转换为数组。这个方法的主要目的,是弥补数组构造函数 Array() 的不足。因为参数个数的不同,会导致 Array() 的行为有差异。

Array() // []

Array(3) // [, , ,]

Array(3, 11, 8) // [3, 11, 8]

Array.of(7);    // [7]

Array.of(1, 2, 3); // [1, 2, 3]

Array(7);     // [ , , , , , , ]

Array(1, 2, 3);  // [1, 2, 3]


6、entries() 返回迭代器:返回键值对

//数组

const arr = ['a', 'b', 'c'];

for(let v of arr.entries()) {

 console.log(v)

}         // [0, 'a'] [1, 'b'] [2, 'c']

//Set

const arr = newSet(['a', 'b', 'c']);

for(let v of arr.entries()) {

 console.log(v)

}        // ['a', 'a'] ['b', 'b'] ['c', 'c']

//Map

const arr = newMap();

arr.set('a', 'a');

arr.set('b', 'b');

for(let v of arr.entries()) {

 console.log(v)

}      // ['a', 'a'] ['b', 'b']


7.values() 返回迭代器:返回键值对的value

//数组

const arr = ['a', 'b', 'c'];

for(let v of arr.values()) {

 console.log(v)

}    //'a' 'b' 'c'

//Set

const arr = newSet(['a', 'b', 'c']);

for(let v of arr.values()) {

 console.log(v)

}    // 'a' 'b' 'c'

//Map

const arr = newMap();

arr.set('a', 'a');

arr.set('b', 'b');

for(let v of arr.values()) {

 console.log(v)

}     // 'a' 'b'


8.keys() 返回迭代器:返回键值对的key

//数组

const arr = ['a', 'b', 'c'];

for(let v of arr.keys()) {

 console.log(v)

}    // 0 1 2

//Set

const arr = newSet(['a', 'b', 'c']);

for(let v of arr.keys()) {

 console.log(v)

}    // 'a' 'b' 'c'

//Map

const arr = newMap();

arr.set('a', 'a');

arr.set('b', 'b');

for(let v of arr.keys()) {

 console.log(v)

}     // 'a' 'b'


9.includes(),判断数组中是否存在该元素,参数:查找的值、起始位置,可以替换 ES5 时代的 indexOf 判断方式。indexOf 判断元素是否为 NaN,会判断错误。

var a = [1, 2, 3];

a.includes(2); // true

a.includes(4); // false

相关文章

  • ECMAScript6 - 学习笔记 整理 - 3

    对象新增方法 数组去重 ES6 新构造函数方法

  • 新增的数组方法

    ES6新增的数组方法 关于数组中forEach() 、map()、filter()、reduce()、some()...

  • js常用数组处理方法

    Array常用方法: 1、改变原数组 2、不改变原数组 3、Es5新增 4、Es6新增方法7个

  • ES6 数组扩展 JavaScript

    [JavaScript数组]一篇中介绍了ES6之前的数组方法。本篇介绍一下ES6里新增的数组方法。 keys,va...

  • JavaScript数组(ES6)

    JavaScript数组一篇中介绍了ES6之前的数组方法。本篇介绍一下ES6里新增的数组方法。 find,find...

  • ES6的新特性3:数组的扩展

    ES6给数组添加了一些新特性,以下介绍的是新增数组的方法。 1:Array.from Array.from作用是可...

  • Array.from

    ES6 新增 Array.from() 方法,从一个类数组或可迭代对象中创建一个新的数组实例 语法 Array.f...

  • ES6(十)增强的数组功能1

    1.创建数组 2.新增的方法 3.fill()方法 4.copyWithin() 方法 创建数组 ES6之前:Ar...

  • ES6新增新操作数组的方法

    接上篇数组操作方法,补充es新增操作数组的方法 1.find(),传入一个回调函数,找到数组中符合当前搜索规则的第...

  • JavaScript数组(Array)方法大全

    js中数组的方法种类众多,有ES5之前版本中存在的,ES5新增,ES6新增等;并且数组的方法还有原型方法和从obj...

网友评论

    本文标题:ES6新增新操作数组的方法

    本文链接:https://www.haomeiwen.com/subject/lwikuqtx.html