JSFiddle - React, Tailwind, and code Playground

by Dmitry Morar

JavaScript

// task 2
const renderList = async () => {
	const response = await fetch('https://jsonplaceholder.typicode.com/todos');
	const result = await response.json();
	const spitedArrByUser = _.groupBy(result, 'userId');
	let arr = [];
	let obj = {};
	let string = "";
	_.forEach(spitedArrByUser, function(item) {
		let com = item.filter(i => i.completed).length;
		obj = {
			userId:item[0].userId,
			com,
			unCom: item.length - com
		}
		
		arr.push(obj)
	});
	let str = "";
	arr.map(item => {str = str +`<li>“Пользователь userID=${item.userId} имеет ${item.com} cat¸ ${item.unCom} dog </li>`
	})
	
	const list = document.createElement('ul');
	list.innerHTML = str;
	document.body.appendChild(list)
};

renderList()

// task 3

const createUsers =  (arr) => {
	let users = []
	let str = "";
	arr.forEach(async (item) => {
		const response = await
			fetch('https://jsonplaceholder.typicode.com/posts', {
				method: 'POST',
				body: JSON.stringify({
					name: item.name,
					age: item.age,
				}),
				headers: {
					"Content-type": "application/json; charset=UTF-8"
				}
			})
		const result = await response.json();
		users.push(result);
		str =`<li>name: ${item.name}, age: ${item.age}</li>`;
		console.log(str)
		const list = document.createElement('ul');
		list.innerHTML = str;
		document.body.appendChild(list)
	})
	
};

createUsers([{name: 'Vasya', age: 25}, {name: 'Petya', age: 40}]);