{"ScriptPreparationCode":"onst filterData = {\r\n lifeStyle:{\r\n data: [\u0022pescatarian\u0022],\r\n extra: {excercise: [5,10]}\r\n },\r\n professional: {\r\n data: [\u0022ged\u0022],\r\n extra: []\r\n }\r\n};\r\n\r\nconst users = [\r\n {\r\n firstName: \u0022Jane\u0022,\r\n lifeStyle: {\r\n data: [\u0022vegetarian\u0022],\r\n otherData: {excercise: [5,10]},\r\n },\r\n professional: {\r\n data: [\u0022bachelors\u0022],\r\n otherData: [],\r\n }\r\n },\r\n {\r\n firstName: \u0022John\u0022,\r\n lifeStyle: {\r\n data: [\u0022pescatarian\u0022],\r\n otherData: {excercise: [5,10]},\r\n },\r\n professional: {\r\n data: [\u0022ged\u0022],\r\n otherData: [],\r\n }\r\n },\r\n {\r\n firstName: \u0022Mike\u0022,\r\n lifeStyle: {\r\n data: [\u0022active\u0022, \u0022pescatarian\u0022],\r\n otherData: {excercise: [5,10]},\r\n },\r\n professional: {\r\n data: [\u0022ged\u0022],\r\n otherData: [],\r\n }\r\n },\r\n {\r\n firstName: \u0022Sam\u0022,\r\n lifeStyle: {\r\n data: [\u0022vegetarian\u0022],\r\n otherData: [],\r\n },\r\n professional: {\r\n data: [],\r\n otherData: [\u0022ged\u0022],\r\n }\r\n },\r\n]","TestCases":[{"Name":"filter","Code":"const usersData = users.filter(function(x) {\r\nfor (let item in filterData) {\r\n console.log(\u0027filterData[item]\u0027, filterData[item])\r\n for(let items in filterData[item].extra) {\r\n //for (const [key, value] of Object.entries(filterData[item].extra)) {\r\n if (filterData[item]?.data?.length \u003E 0) {\r\n if (x[item]?.data.includes(...filterData[item]?.data) \u0026\u0026\r\n x[item]?.otherData[items][0] \u003E= filterData[item]?.extra[items][0] \u0026\u0026 \r\n x[item]?.otherData[items][1] \u003C= filterData[item]?.extra[items][1]\r\n ) {\r\n return x\r\n }\r\n }\r\n }\r\n}\r\n}\r\n)","IsDeferred":false},{"Name":"for loop","Code":"const usersData = [];\r\n \r\nfor (let i=0; users.length \u003E i; i\u002B\u002B) {\r\nfor (let item in filterData) {\r\n console.log(\u0027filterData[item]\u0027, filterData[item])\r\n for(let items in filterData[item].extra) {\r\n //for (const [key, value] of Object.entries(filterData[item].extra)) {\r\n if (filterData[item]?.data?.length \u003E 0) {\r\n if (x[item]?.data.includes(...filterData[item]?.data) \u0026\u0026\r\n users[i][item]?.otherData[items][0] \u003E= filterData[item]?.extra[items][0] \u0026\u0026 \r\n users[i][item]?.otherData[items][1] \u003C= filterData[item]?.extra[items][1]\r\n ) {\r\n usersData.push(x)\r\n }\r\n }\r\n }\r\n}\r\n}","IsDeferred":false}]}