const getTodos = (res) =>{ return new Promise((resolve, reject) =>{ const req = new XMLHttpRequest(); req.addEventListener('readystatechange', ()=>{ if(req.readyState === 4 && req.status === 200){ const data = JSON.parse(req.responseText) resolve(data) }else if(req.readyState === 4){ reject('could not fetch data') } }) req.open('GET', res) req.send() }) } getTodos('todos/astra.json').then(data=>{ console.log(data) return getTodos('todos/breach.json') }).then(data=>{ console.log(data) return getTodos('todos/astra.json') }).then(data=>{ console.log(data) }).catch(err=>{ console.log(err) })