2017-11-03 5 views
0

I 3つのオブジェクトを持っているが、それぞれが(ここでは4)、私はすべての必要最大長に基づいて、異なる長さReactJS - 長さに基づいて、3つのオブジェクトを比較し、空のフィールドとの差を埋める

obj1 = [{...}, {...}, {...}, {...}] // length = 4 
obj2 = [{...}, {...}] // length = 2 
obj3 = [{...}, {...}, {...}] // length = 3 

を有します彼らは同じ長さを有するように、のように:私は、後で有効な要素を知っている必要があるため

obj1 = [{...}, {...}, {...}, {...}] // length = 4 
obj2 = [{...}, {...}, {}, {}] // length = 4 
obj3 = [{...}, {...}, {...}, {}] // length = 4 

違いが空でなければなりません。

は、どのように私は、同じ長さの3オブジェクトを持つことができますか?

よろしくお願いいたします。

答えて

2

はたぶん、このような何か:あなたは配列にすべての要素を追加する可能性を持っている場合は

// Define max length 
const maxLen = Math.max(obj1.length, obj2.length, obj3.length); 

// Push missing itens for each arr object 
obj1.push(...new Array(maxLen-obj1.length)); 

は、操作がさらに簡単になりました:

const arr = ... // your array of arrays 
const maxLen = Math.max(... arr.map(i => i.length)); 

arr.forEach(a => a.push(...new Array(maxLen-a.length));) 
関連する問題