const getPosts = () => new Promise((resolves, rejects) => { const api = `https://jsonplaceholder.typicode.com/posts`; const request = new XMLHttpRequest(); request.open("GET", api); request.onload = () => request.status === 200 ? resolves(JSON.parse(request.response)) : rejects(Error(request.statusText)); request.onerror = err => rejects(err); request.send(); }); function printPosts(json) { for (let post of json) { const {title, body} = post; console.log(`Title: ${title}\nBody: ${body}`) } } getPosts() .then(response => printPosts(response)) .catch(err => console.error(`ERROR MSG: ${error.message}`));