js配列のいくつかの騒乱動作


Aray.from  mdnの説明を参照してくださいArray.from() 配列オブジェクトは、次のように作成できます.
  • ダミー配列オブジェクト  length 属性といくつかの索引属性の任意のオブジェクト)
  • 反復オブジェクト(MapやSetなどのオブジェクトの要素を取得することができる)
  • Array.from() 方法にはオプションのパラメータがあります.  mapFn、最後に生成された配列上でもう一回実行してもいいです.  map 方法を説明してから戻ります.つまり Array.from(obj, mapFn, thisArg) Array.from(obj).map(mapFn, thisArg),に相当します. 利用可能な中間配列でない限り作成します.これらは、いくつかの配列のサブクラス,に対して、例えば typed arrays 重要です 中間配列の値は、map()を呼び出すときに適切なタイプが必要です.from() の  length 属性は1です  Array.from.length === 1ES 2015において、  Class 文法は内蔵タイプを許可します.  Array)とカスタムクラスの新規サブクラス(例えば、  SubArray)これらのサブクラスも父の静的な方法を継承します.  SubArray.from()、この方法を呼び出したら、サブクラスに戻ります.  SubArray の一例であって、そうではない.  Array の例を示します
    簡単に言えば、lengthを持っているオブジェクトと、ローズマリーで反復可能なオブジェクトを本物の配列に変換することができます.いくつかの例を見ておきます
    例一:クラス行列変換
    Array.from("foo")  // ['f','o','o'];
    文字列自体にはlength属性がありますので、文字配列に変換できます.
    例二:新規配列の一括作成
    Array.from({length:5},(v,i)=>i)
    1.オブジェクト{length:5}を配列変換して[undefined、undefined、undefined、undefined、undefined、undefined、undefined]の配列を得る.
    2.得られた配列をmapする  対応する配列の下付きに変換します.//[0,1,2,3,4]
     
    例三:配列デ重量
    function combine(){
    
    let arr = [].concat.apply([],arguments);
    
    return Array.from(new Set(arr))
    
    }
    
    let arr1 = [1,2,3,4];
    
    let arr2 = [2,3,3,4,5];
    
    combine(arr1,arr2)   //  [1, 2, 3, 4, 5]
    1.appyを利用して、配列を単一パラメータの特性に分解し、配列のconcat方法を呼び出してパラメータセットをスティッチングすることができます.新しい配列arr./[1,2,3,3,4,5]2.Set特性を利用してarrの重複要素を除去し、アーラy.fromを介して疑似配列とSet,Mapなどの集合の特徴を変換し、新しいデ重い配列に戻る.参照https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Global_Object/Aray/from