Javascript
 Computer >> コンピューター >  >> プログラミング >> Javascript

JavaScriptを使用してキーでネストされたオブジェクトをフィルタリングする


このようなオブジェクトの配列があるとします-

const arr = [{ 'title': 'Hey',
   'foo': 2,
   'bar': 3
}, {
   'title': 'Sup',
   'foo': 3,
   'bar': 4
}, {
   'title': 'Remove',
   'foo': 3,
   'bar': 4
}];

最初の入力として1つの配列を取り、2番目の入力として文字列リテラルの配列を受け取るJavaScript関数を作成する必要があります。

次に、関数は、titleプロパティがリテラルの2番目の入力配列に部分的または完全に含まれているすべてのオブジェクトを含む新しい配列を準備する必要があります。

このためのコードは-

になります
const arr = [{ 'title': 'Hey',
   'foo': 2,
   'bar': 3
}, {
   'title': 'Sup',
   'foo': 3,
   'bar': 4
}, {
   'title': 'Remove',
   'foo': 3,
   'bar': 4
}];
const filterTitles = ['He', 'Su'];
const filterByTitle = (arr = [], titles = []) => {
   let res = [];
   res = arr.filter(obj => {
      const { title } = obj;
      return !!titles.find(el => title.includes(el));
   });
   return res;
};
console.log(filterByTitle(arr, filterTitles));

出力

そして、コンソールの出力は-

になります
[ { title: 'Hey', foo: 2, bar: 3 }, { title: 'Sup', foo: 3, bar: 4 } ]

  1. JavaScriptを使用した配列内のネストされたオブジェクト値の合計

    以下は、JavaScriptを使用して配列内のネストされたオブジェクト値を合計するコードです- 例 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8" /> <meta name="viewport" content="width=device-width, initial-scale=1.0" /> <title>Document</title> <st

  2. JavaScriptのObject.keys()。map()VS Array.map()

    以下は、JavaScriptでObject.keys()。map()とArray.map()を示すコードです- 例 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8" /> <meta name="viewport" content="width=device-width, initial-scale=1.0" /> <title>Document</title>