別の配列に格納されている参照に基づいて配列を並べ替える

user8116198

ここで奇妙なシナリオですが、私はそれに遭遇しました。

このシナリオ用のオブジェクトの配列が2つactionsあり、と言うことができますlines

内部には、actions次のようにフォーマットされたオブジェクトがあります。

{
    id: 'randomGeneratedId1',
    text: 'Click here',
    url: 'stackoverflow.com'
}

lines私のには:

{
    id: 'randomGeneratedId2',
    text: 'Line 1'
}

最後に、これらの順序を格納する別の配列があります...これを elementOrder

[
    { id: 'randomGeneratedId1', order: 1 },
    { id: 'randomGeneratedId2', order: 2 }
]

基本的に、elementOrder上記で参照したように、linesactions配列の両方を調べて、この最終的な配列内でそれらを順番に並べたいので、要素データとIDのリストを含む配列の結果が得られます。それらが入っている順序。

このようになっている理由はclass.line('Line 1').action('Click here', 'stackoverflow.com').line(...).action(...).action(...)、チェーンを無制限にしたいというメソッドがありますが、そもそも両方を異なるオブジェクトに含める必要があるためです。

私はこれが可能であることを知っていて、それをマッピングしようとしましたが、頭を包むことができないようです!

Nithin kumar biliya
  1. フィールドにelementOrder基づい配列を並べ替えるorder
  2. ソートされたelementOrder配列をループします。
  3. その中の各要素について、actionsandlines配列を検索して一致するものを見つけ、finalArrayこれに基づいて構築します。

コード-

var actions = [
  {
    id: 'randomGeneratedId1',
    text: 'Click here',
    url: 'stackoverflow.com'
  }]

var lines = [
  {
    id: 'randomGeneratedId2',
    text: 'Line 1'
  }
]

var elementOrder = [
  { id: 'randomGeneratedId2', order: 2 },
  { id: 'randomGeneratedId1', order: 1 }
]


// this is where you build the final array
var finalArray = elementOrder.sort((a, b) => a.order - b.order).map(ele => {
  var action = actions.find(action => ele.id === action.id);
  if (action) {
    return action;
  }
  var line = lines.find(line => ele.id === line.id);
  if (line) {
    return line;
  }
  return ele;
});

console.log(JSON.stringify(finalArray));
// [{"id":"randomGeneratedId1","text":"Click here","url":"stackoverflow.com"},{"id":"randomGeneratedId2","text":"Line 1"}]

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

Swift別の配列に基づいて配列を並べ替える

分類Dev

別の配列に基づいてJSONエンコードされた配列を並べ替える

分類Dev

配列の長さに基づいて配列を並べ替える

分類Dev

別の配列に基づいて複数の配列を並べ替える並べ替え順序

分類Dev

別の配列の並べ替え順序に基づいて配列を並べ替える

分類Dev

文字列配列jsに格納されているキーに基づくカスタムの並べ替え/順序付けオブジェクト配列

分類Dev

rubyの参照配列に基づいて構造体を並べ替える

分類Dev

PHPの値に基づいて配列を並べ替える

分類Dev

配列に基づいて行列の行を並べ替える

分類Dev

他の並べ替えられた配列に基づいて配列を並べ替える

分類Dev

PHP 5.3で別の配列の値に基づいて配列要素の配列を並べ替える方法は?

分類Dev

別の配列の順序に基づいて配列の配列を並べ替える(Ruby)

分類Dev

別の配列の順序に基づいて配列の配列を並べ替える

分類Dev

パンダの配列の別の列に基づいて配列の列を並べ替える方法は?

分類Dev

ある列に基づいてnumpy配列を並べ替えてから、別の列に基づいてサブ並べ替える最良の方法は?

分類Dev

合計に基づいて配列列を並べ替える

分類Dev

別の配列の並べ替え順序に基づいて複数の配列を並べ替えるにはどうすればよいですか?

分類Dev

各要素の長さに基づいて配列を並べ替える方法は?

分類Dev

平均に基づいて配列の配列を並べ替える

分類Dev

ID配列に基づいて複数の配列を並べ替える

分類Dev

子配列の値に基づいて配列を並べ替える方法

分類Dev

辞書に格納されているタプル内の配列を並べ替える方法

分類Dev

プロットを作成する前に、別の配列に基づいて配列を並べ替える

分類Dev

javascriptの別の配列に基づいて配列を並べ替えます

分類Dev

計算値に基づいて配列を並べ替える

分類Dev

頻度に基づいて配列要素を並べ替える

分類Dev

startTimeとendTimeに基づいて配列を並べ替える

分類Dev

属性値に基づいてJSON配列を並べ替える

分類Dev

値に基づいて配列を並べ替える

Related 関連記事

  1. 1

    Swift別の配列に基づいて配列を並べ替える

  2. 2

    別の配列に基づいてJSONエンコードされた配列を並べ替える

  3. 3

    配列の長さに基づいて配列を並べ替える

  4. 4

    別の配列に基づいて複数の配列を並べ替える並べ替え順序

  5. 5

    別の配列の並べ替え順序に基づいて配列を並べ替える

  6. 6

    文字列配列jsに格納されているキーに基づくカスタムの並べ替え/順序付けオブジェクト配列

  7. 7

    rubyの参照配列に基づいて構造体を並べ替える

  8. 8

    PHPの値に基づいて配列を並べ替える

  9. 9

    配列に基づいて行列の行を並べ替える

  10. 10

    他の並べ替えられた配列に基づいて配列を並べ替える

  11. 11

    PHP 5.3で別の配列の値に基づいて配列要素の配列を並べ替える方法は?

  12. 12

    別の配列の順序に基づいて配列の配列を並べ替える(Ruby)

  13. 13

    別の配列の順序に基づいて配列の配列を並べ替える

  14. 14

    パンダの配列の別の列に基づいて配列の列を並べ替える方法は?

  15. 15

    ある列に基づいてnumpy配列を並べ替えてから、別の列に基づいてサブ並べ替える最良の方法は?

  16. 16

    合計に基づいて配列列を並べ替える

  17. 17

    別の配列の並べ替え順序に基づいて複数の配列を並べ替えるにはどうすればよいですか?

  18. 18

    各要素の長さに基づいて配列を並べ替える方法は?

  19. 19

    平均に基づいて配列の配列を並べ替える

  20. 20

    ID配列に基づいて複数の配列を並べ替える

  21. 21

    子配列の値に基づいて配列を並べ替える方法

  22. 22

    辞書に格納されているタプル内の配列を並べ替える方法

  23. 23

    プロットを作成する前に、別の配列に基づいて配列を並べ替える

  24. 24

    javascriptの別の配列に基づいて配列を並べ替えます

  25. 25

    計算値に基づいて配列を並べ替える

  26. 26

    頻度に基づいて配列要素を並べ替える

  27. 27

    startTimeとendTimeに基づいて配列を並べ替える

  28. 28

    属性値に基づいてJSON配列を並べ替える

  29. 29

    値に基づいて配列を並べ替える

ホットタグ

アーカイブ