Created
July 13, 2019 08:17
-
-
Save ohoroyoi/eda3a17301ff5ffdcf2882eb96a141b7 to your computer and use it in GitHub Desktop.
samjeon_react.js
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// // callback | |
// function add(a, b){ | |
// return a + b; | |
// } | |
// function addFour(x, f){ // 인자로 함수를 받는 형태 | |
// return f(x, 4); | |
// } | |
// const value = addFour(1, add); | |
// console.log(value); | |
// const getTime = (callback) => { | |
// // setTimeout(()=> { | |
// // // console.log(new Date().getSeconds()); | |
// // callback(new Date()); | |
// // }, 2000); | |
// callback('안녕'); | |
// } | |
// getTime((message)=>{ | |
// console.log(message); | |
// }); | |
/////////////////////////////////////////////// | |
// $.getJSON('https://jsonplaceholder.typicode.com/todos/1', (data) => { | |
// console.log(data); | |
// }); | |
// const getTodos = (id, onSuccess) => { | |
// $.getJSON(`https://jsonplaceholder.typicode.com/todos/${id}`, (data) => { | |
// // console.log(data); | |
// onSuccess(data); | |
// }); | |
// }; | |
// getTodos('1', (data) => { | |
// console.log(data); | |
// }); | |
/////////////////////////////////////////////// | |
// const todosPromise = new Promise((resolve, reject) => { | |
// const condition = Math.random() > 0.5; //true or false | |
// return condition ? resolve('성공했어요') : reject('실패했어용'); | |
// }); | |
// // console.log(todosPromise); | |
// todosPromise.then((data) => { | |
// console.log(data); | |
// }).catch((err)=>{ | |
// console.log(err); | |
// }); | |
/////////////////////////////////////////////// | |
const getTodos = (id) => { | |
return new Promise((resolve, reject) => { | |
$.getJSON(`https://jsonplaceholder.typicode.com/todos/${id}`, (data) => { | |
resolve(data); | |
}); | |
}); | |
} | |
// console.log("하나"); | |
// getTodos('1') | |
// .then((data) => { | |
// console.log("둘"); | |
// console.log(data); | |
// return getTodos('2'); | |
// }).then((data2) => { | |
// console.log(data2); | |
// return getTodos('3'); | |
// }).then((data3)=>{ | |
// console.log(data3); | |
// return getTodos('4'); | |
// }).then((data4) => { | |
// console.log(data4); | |
// }).catch((err) => {console.log(err)}); | |
// console.log("셋"); | |
/////////////////////////////////////////////// | |
// const execute = async () => { | |
// console.log('하나'); | |
// const dataOne = await getTodos('1'); | |
// console.log(dataOne) | |
// console.log('둘'); | |
// const dataTwo = await getTodos('2'); | |
// console.log(dataTwo) | |
// } // 비동기 이지만 순차적으로 | |
// execute(); | |
// 아래처럼 하면 순서보장 x | |
// getTodos('1').then(()=> {console.log(data)}; | |
// getTodos('2').then(()=> {console.log(data)}; | |
// getTodos('3').then(()=> {console.log(data)}; | |
/////////////////////////////////////////////// | |
//다 받는거 확신해야할떄 | |
Promise.all([ | |
getTodos('1'), | |
getTodos('2'), | |
getTodos('3'), | |
]).then((dataArr) => { console.log(dataArr) }); | |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment