zoukankan      html  css  js  c++  java
  • ES6 数组扩展

    1、...扩展运算符

    该运算符将一个数组,变为参数序列。

    作用:(1)代替aplly

    'use strict';
    Math.max(...[2,5,8])

     (2)将字符串转为数组

    2、Array.from

    object)和可遍历(iterable)的对象(包括 ES6 新增的数据结构 Set 和 Map)。

    实际应用中,常见的类似数组的对象是 DOM 操作返回的 NodeList 集合,以及函数内部的arguments对象。Array.from都可以将它们转为真正的数组。

    // NodeList对象
    let ps = document.querySelectorAll('p');
    Array.from(ps).forEach(function (p) {
      console.log(p);
    });

    字符串转为数组:

    var  ss = Array.from('hello')

    Array.from还可以接受第二个参数,作用类似于数组的map方法,用来对每个元素进行处理,将处理后的值放入返回的数组。

    Array.from([1, 2, 3], (x) => x * x)
    // [1, 4, 9]

    3、Array.of

    Array.of方法用于将一组值,转换为数组。

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

    Array.of基本上可以用来替代Array()new Array(),并且不存在由于参数不同而导致的重载。它的行为非常统一。

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

    Array.of总是返回参数值组成的数组。如果没有参数,就返回一个空数组。

    4、数组实例的 find() 和 findIndex() 

    数组实例的find方法,用于找出第一个符合条件的数组成员。

    数组实例的findIndex方法的用法与find方法非常类似,返回第一个符合条件的数组成员的位置,如果所有成员都不符合条件,则返回-1

    [1, 5, 10, 15].findIndex(function(value, index, arr) {
      return value > 9;
    }) // 2

    回调函数可以接受三个参数,依次为当前的值、当前的位置和原数组。

    5、数组实例的 entries(),keys() 和 values()

    ES6 提供三个新的方法——entries()keys()values()——用于遍历数组。

    可以用for...of循环进行遍历,唯一的区别是keys()是对键名的遍历、values()是对键值的遍历,entries()是对键值对的遍历。

    for (let elem of ['a', 'b'].values()) {
      console.log(elem);
    }

    6、includes

    Array.prototype.includes方法返回一个布尔值,表示某个数组是否包含给定的值

  • 相关阅读:
    常用PHP函数整理
    Linux常用命令整理
    Linux怎样创建FTP服务器
    设置ssh只允许用户从指定的IP登陆
    解决数据库不能远程连接方法
    [记录]ns_error_unexpected firefox tinymce
    $.parseJSON 将json 对象转换为array
    Flash cs6 帧上的菱形原来是关键帧
    [记录]java.math.biginteger cannot be cast to java.lang.long
    Flash cs6 如何从FLA 文件导出sound文件
  • 原文地址:https://www.cnblogs.com/mengfangui/p/8023397.html
Copyright © 2011-2022 走看看