サブ配列のキー値によってオブジェクトを配列から削除します

r1987:

オブジェクトの配列があります:

 const data = [
    {
      title: '"test1"',
      excluded_dates: false,
    },
    {
      title: '"test2"',
      excluded_dates: [
        { excluded_date: "2020-09-12" },
        {
          excluded_date: "2020-09-17",
        },
      ],
    },
    {
      title: '"test3"',
      excluded_dates: [
        {
          excluded_date: "2020-09-16",
        },
        {
          excluded_date: "2020-09-24",
        },
      ],
    },
  ];

そして、exclude_dates配列特定の日付(この例では2020-09-24があるオブジェクトを削除して、次のように新しい配列を出力します。

  outcome = [
    {
      title: '"test1"',
      excluded_dates: false,
    },
    {
      title: '"test2"',
      excluded_dates: [
        { excluded_date: "2020-09-12" },
        {
          excluded_date: "2020-09-17",
        },
      ],
    }
   ];

このため、私は二重フィルタリングの使用を考えていました。私もsome()を試しましたが、これはオブジェクトの配列ではなく配列用です。

const outcome = data.filter(function (event) {
    if (event.excluded_dates) {
      return event.excluded_dates.filter(
        (date) => date.excluded_date === "2020-09-24"
      );
    }
  });

 console.log(outcome);

このコースは期待どおりに動作しません。ここで何が欠けていますか?

Lioness100:

trueオブジェクトにexcluded_datesプロパティがない場合は必ず返してくださいまた、探している日付は1つだけなので、2番目の使用Array.prototype.filterArray.prototype.some()

const outcome = data.filter((event) => {
  return !(
    event.excluded_dates && // if there is no `excluded_dates` property, return `true`
    event.excluded_dates.some( // otherwise, try to find the date. if found, return `false`
      ({ excluded_date }) => excluded_date === "2020-09-24"
    )
  );
});

コードスニペットの例:

const data = [{
    title: '"test1"',
    excluded_dates: false,
  },
  {
    title: '"test2"',
    excluded_dates: [{
        excluded_date: "2020-09-12"
      },
      {
        excluded_date: "2020-09-17",
      },
    ],
  },
  {
    title: '"test3"',
    excluded_dates: [{
        excluded_date: "2020-09-16",
      },
      {
        excluded_date: "2020-09-24",
      },
    ],
  },
];

const outcome = data.filter((event) => {
  return !(
    event.excluded_dates &&
    event.excluded_dates.some(
      ({ excluded_date }) => excluded_date === "2020-09-24"
    )
  );
});

console.log(outcome);

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

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

編集
0

コメントを追加

0

関連記事

分類Dev

PHPは、サブ配列のキー値によって多次元配列からサブ配列を削除します

分類Dev

特定のキー値を持つすべてのオブジェクトを配列から削除します

分類Dev

PostgreSQL:jsonオブジェクトを使用して配列からキーと値のペアを削除します

分類Dev

IE9のオブジェクト値を参照して、JavaScriptのメイン配列からオブジェクトのサブ配列を削除します

分類Dev

値Javascriptによってオブジェクトの配列からキーを取得する方法

分類Dev

NodeJSは、キーの値によって配列内のオブジェクトを検索します

分類Dev

キーに基づいてオブジェクトの JavaScript 配列から重複を削除します

分類Dev

キー値をターゲットにして配列からjsonオブジェクトを削除しようとしています

分類Dev

jsは、オブジェクトの配列から値によって重複を削除し、重複をカウントします

分類Dev

lodash-値によってオブジェクトの配列を削除します

分類Dev

キーに基づいてオブジェクトから値の配列を作成します

分類Dev

属性値に基づいてRubyの配列からオブジェクトを削除/削除します

分類Dev

キーと値のペアに基づいて配列からオブジェクトを削除する方法は?

分類Dev

オブジェクトの配列からキーでオブジェクトの配列を作成します

分類Dev

オブジェクトに特定の値がある場合は、配列から配列を削除します

分類Dev

特定のキーを使用してオブジェクトの配列を作成し、そのキーをオブジェクトから削除します

分類Dev

配列内のすべてのオブジェクトからキーを削除します

分類Dev

他の配列を使用して配列からキー/値でオブジェクトを抽出する方法

分類Dev

キーによってオブジェクトからオブジェクト配列にマージします

分類Dev

nodejsを使用して、オブジェクトの配列から特定のキー値を検索します

分類Dev

オブジェクトが値の配列で見つかったときにキーを取得します

分類Dev

Redux Reducer:キーによって配列内のオブジェクトを不変に更新します

分類Dev

JavaScriptは、キー値の配列に基づいてリストからオブジェクトを削除します

分類Dev

値が0のオブジェクトを配列から削除します

分類Dev

オブジェクトの配列から同じ値を削除します

分類Dev

キーの1つによる条件に従って、配列から単一のオブジェクトを取得します

分類Dev

配列内のオブジェクトを配列から削除します

分類Dev

配列からオブジェクトに値を追加し、配列がなくなっても未定義にならないようにします

分類Dev

オブジェクトの配列からキーに基づいて各値を取得できますか?

Related 関連記事

  1. 1

    PHPは、サブ配列のキー値によって多次元配列からサブ配列を削除します

  2. 2

    特定のキー値を持つすべてのオブジェクトを配列から削除します

  3. 3

    PostgreSQL:jsonオブジェクトを使用して配列からキーと値のペアを削除します

  4. 4

    IE9のオブジェクト値を参照して、JavaScriptのメイン配列からオブジェクトのサブ配列を削除します

  5. 5

    値Javascriptによってオブジェクトの配列からキーを取得する方法

  6. 6

    NodeJSは、キーの値によって配列内のオブジェクトを検索します

  7. 7

    キーに基づいてオブジェクトの JavaScript 配列から重複を削除します

  8. 8

    キー値をターゲットにして配列からjsonオブジェクトを削除しようとしています

  9. 9

    jsは、オブジェクトの配列から値によって重複を削除し、重複をカウントします

  10. 10

    lodash-値によってオブジェクトの配列を削除します

  11. 11

    キーに基づいてオブジェクトから値の配列を作成します

  12. 12

    属性値に基づいてRubyの配列からオブジェクトを削除/削除します

  13. 13

    キーと値のペアに基づいて配列からオブジェクトを削除する方法は?

  14. 14

    オブジェクトの配列からキーでオブジェクトの配列を作成します

  15. 15

    オブジェクトに特定の値がある場合は、配列から配列を削除します

  16. 16

    特定のキーを使用してオブジェクトの配列を作成し、そのキーをオブジェクトから削除します

  17. 17

    配列内のすべてのオブジェクトからキーを削除します

  18. 18

    他の配列を使用して配列からキー/値でオブジェクトを抽出する方法

  19. 19

    キーによってオブジェクトからオブジェクト配列にマージします

  20. 20

    nodejsを使用して、オブジェクトの配列から特定のキー値を検索します

  21. 21

    オブジェクトが値の配列で見つかったときにキーを取得します

  22. 22

    Redux Reducer:キーによって配列内のオブジェクトを不変に更新します

  23. 23

    JavaScriptは、キー値の配列に基づいてリストからオブジェクトを削除します

  24. 24

    値が0のオブジェクトを配列から削除します

  25. 25

    オブジェクトの配列から同じ値を削除します

  26. 26

    キーの1つによる条件に従って、配列から単一のオブジェクトを取得します

  27. 27

    配列内のオブジェクトを配列から削除します

  28. 28

    配列からオブジェクトに値を追加し、配列がなくなっても未定義にならないようにします

  29. 29

    オブジェクトの配列からキーに基づいて各値を取得できますか?

ホットタグ

アーカイブ