• Array.from(new Set)去重 与Array.map()


    类数组转为数组
    1、Array from
    2、 Array.prototype.slice.call(arguments);

    Array.from()在转化对象时,要求过于苛刻,因此不适用于转化对象,主要场景如下:

    (1)从类数组对象(arguments)生成数组
    let fn = function(){
    console.log(Array.from(arguments));
    }
    fn(1,2,3) // [1,2,3]

    (2)从 String 生成数组
    Array.from(‘112’); // [“1”,“1”,“2”]

    (3)从Set生成数组
    Array.from(new Set([“1”,“1”,“2”,“2”])); // [“1”,“2”]

    (4)从Map生成数组
    Array.from(new Map([[1, ‘a’], [2, ‘b’]])); // [[1, ‘a’], [2, ‘b’]]

    (5)生成一个从0开始到指定数字的定长连续数组
    Array.from({length: 10}, (v, i) => i); // [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]

    array.map(function(currentValue,index,arr), thisValue)
    function(currentValue,index,arr) 必须。函数,数组中的每个元素都会执行这个函数
    thisValue 可选。对象作为该执行回调时使用,传递给函数,用作 “this” 的值。
    如果省略了 thisValue,或者传入 null、undefined,那么回调函数的 this 为全局对象。

    定义和用法
    map() 方法返回一个新数组,数组中的元素为原始数组元素调用函数处理后的值。
    map() 方法按照原始数组元素顺序依次处理元素。
    注意: map() 不会对空数组进行检测。
    注意: map() 不会改变原始数组。

    var numbers = [65, 44, 12, 4];
    function multiplyArrayElement(num) {
    return num * 2;
    }
    function myFunction() {
    document.getElementById(“demo”).innerHTML = numbers.map(multiplyArrayElement);
    }
    myFunction()

    返回一个数组,数组中元素为原始数组的平方根:

    var numbers = [9, 16, 25,36];

    function myFunction() {
    x = document.getElementById(“demo”)
    x.innerHTML = numbers.map(Math.sqrt);
    }
    myFunction();

  • 相关阅读:
    AQS实现原理
    Yolo V4详解
    java的for循环中遇到异常抛出后继续循环执行
    Django更改超级用户密码
    社区矫正手机智能管控平台
    什么是EventEmitter?它在Node.js中有什么作用?
    开源远程桌面软件_RustDesk_(可自建远程桌面服务器)
    软件工程(上)
    【数据结构初阶】单链表(附全部码源)
    centos安装docker
  • 原文地址:https://blog.csdn.net/IT_bar/article/details/126683854