js配列のいくつかの騒乱動作
1826 ワード
Aray.from mdnの説明を参照してくださいダミー配列オブジェクト 反復オブジェクト(MapやSetなどのオブジェクトの要素を取得することができる)
簡単に言えば、lengthを持っているオブジェクトと、ローズマリーで反復可能なオブジェクトを本物の配列に変換することができます.いくつかの例を見ておきます
例一:クラス行列変換
例二:新規配列の一括作成
2.得られた配列をmapする 対応する配列の下付きに変換します.//[0,1,2,3,4]
例三:配列デ重量
Array.from()
配列オブジェクトは、次のように作成できます.length
属性といくつかの索引属性の任意のオブジェクト)Array.from()
方法にはオプションのパラメータがあります. mapFn
、最後に生成された配列上でもう一回実行してもいいです. map
方法を説明してから戻ります.つまり Array.from(obj, mapFn, thisArg)
はArray.from(obj).map(mapFn, thisArg),
に相当します. 利用可能な中間配列でない限り作成します.これらは、いくつかの配列のサブクラス,
に対して、例えば typed arrays 重要です 中間配列の値は、map()を呼び出すときに適切なタイプが必要です.from()
の length
属性は1です Array.from.length === 1
ES 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