diff --git a/javascript/index.js b/javascript/index.js index 9f30552db..b811b3352 100644 --- a/javascript/index.js +++ b/javascript/index.js @@ -4,7 +4,7 @@ // 🚨🚨🚨 Comment out the below code before you start working on the code // Out of sync - getInstruction("mashedPotatoes", 0, (step1) => { + /* getInstruction("mashedPotatoes", 0, (step1) => { document.querySelector("#mashedPotatoes").innerHTML += `
  • ${step1}
  • `; }, (error) => console.log(error)); @@ -23,18 +23,120 @@ getInstruction("mashedPotatoes", 4, (step5) => { document.querySelector("#mashedPotatoes").innerHTML += `
  • ${step5}
  • `; document.querySelector("#mashedPotatoesImg").removeAttribute("hidden"); - }, (error) => console.log(error)); + }, (error) => console.log(error)); */ // Iteration 1 - using callbacks // ... + getInstruction('mashedPotatoes', 0, (step0) => { + document.querySelector("#mashedPotatoes").innerHTML += `
  • ${step0}
  • `; + getInstruction('mashedPotatoes', 1, (step1) => { + document.querySelector("#mashedPotatoes").innerHTML += `
  • ${step1}
  • `; + getInstruction("mashedPotatoes", 2, (step2) => { + document.querySelector("#mashedPotatoes").innerHTML += `
  • ${step2}
  • `; + getInstruction("mashedPotatoes", 3, (step3) => { + document.querySelector("#mashedPotatoes").innerHTML += `
  • ${step3}
  • `; + getInstruction("mashedPotatoes", 4, (step4) => { + document.querySelector("#mashedPotatoes").innerHTML += `
  • ${step4}
  • `; + document.querySelector("#mashedPotatoesImg").removeAttribute("hidden"); + }, (error) => console.log(error)); + }); + }); + }); + }); + // Iteration 2 - using promises // ... +obtainInstruction('steak', 0) + .then( (step0) => { + document.querySelector("#steak").innerHTML += `
  • ${step0}
  • `; + return obtainInstruction('steak', 1) + }) + + .then( (step1) => { + document.querySelector("#steak").innerHTML += `
  • ${step1}
  • `; + return obtainInstruction('steak', 2) + }) + + .then( (step2) => { + document.querySelector("#steak").innerHTML += `
  • ${step2}
  • `; + return obtainInstruction('steak', 3) + }) + + .then( (step3) => { + document.querySelector("#steak").innerHTML += `
  • ${step3}
  • `; + return obtainInstruction('steak', 4) + }) + + .then( (step4) => { + document.querySelector("#steak").innerHTML += `
  • ${step4}
  • `; + return obtainInstruction('steak', 5) + }) + + .then( (step5) => { + document.querySelector("#steak").innerHTML += `
  • ${step5}
  • `; + return obtainInstruction('steak', 6) + }) + + .then( (step6) => { + document.querySelector("#steak").innerHTML += `
  • ${step6}
  • `; + return obtainInstruction('steak', 7) + }) + + .then( (step7) => { + document.querySelector("#steak").innerHTML += `
  • ${step7}
  • `; + document.querySelector("#steakImg").removeAttribute("hidden"); + }); + + // Iteration 3 using async/await // ... +async function makeBroccoli() { + +/* try { + const step0 = await obtainInstruction('broccoli', 0); + document.querySelector("#broccoli").innerHTML += `
  • ${step0}
  • `; + + const step1 = await obtainInstruction('broccoli', 1); + document.querySelector("#broccoli").innerHTML += `
  • ${step1}
  • `; + + const step2 = await obtainInstruction('broccoli', 2); + document.querySelector("#broccoli").innerHTML += `
  • ${step2}
  • `; + + const step3 = await obtainInstruction('broccoli', 3); + document.querySelector("#broccoli").innerHTML += `
  • ${step3}
  • `; + + const step4 = await obtainInstruction('broccoli', 4); + document.querySelector("#broccoli").innerHTML += `
  • ${step4}
  • `; + + const step5 = await obtainInstruction('broccoli', 5); + document.querySelector("#broccoli").innerHTML += `
  • ${step5}
  • `; + + const step6 = await obtainInstruction('broccoli', 6); + document.querySelector("#broccoli").innerHTML += `
  • ${step6}
  • `; + document.querySelector("#broccoliImg").removeAttribute("hidden"); + + } catch (err) { + console.error(err); + } */ + + + try { + for (let i = 0; i < broccoli.length; i++) { + const step = await obtainInstruction('broccoli', i); + document.querySelector("#broccoli").innerHTML += `
  • ${step}
  • `; + } + document.querySelector("#broccoliImg").removeAttribute("hidden"); + } catch (err) { + console.error(err); + } +} + + +makeBroccoli() // Bonus 2 - Promise all // ... \ No newline at end of file