230219(일)
🎄 성장일지 3.1
책 행복한 이기주의자(웨인 다이어)
의 내용에 자극받아 시작하는 소박한 성장기록
살아있는 꽃과 죽은 꽃은 어떻게 구별하는가?<br/> 성장하고 있는 것이 살아 있는 것이다.<br/> 생명의 유일한 증거는 성장이다!
🌳 키워드 (1.0)<br/> 최대한 간단하게 정리, 추후에 보면서 스스로 설명<br/> 🍉 경험 위주로 (2.0)<br/> 단순 정보를 전달하기보다 무엇을 배웠고 어떻게 해결했는지 짧고 간단하게 작성<br/> ❄️ 정해진 템플릿에 맞춰서 (3.0)<br/> 키워드, 경험 모두 좋다. 다만 매일 작성하기로 마음 먹은만큼 핵심만 간결하게 정리할 수 있게 템플릿을 작성 (3.1) 230102부터 시작되는 학습에 관한 내용 추가
🔑 오늘의 키워드
ch4. 콜백 함수
Quiz1)p101. 예제 4-5. / 참고하여 filter 메서드 구현해보기
// 예제 4-5 Array.prototype.map2 = function(callback, thisArg) { var mappedArr = []; for (var i = 0; i < this.length; i++) { var mappedValue = callback.call(thisArg || window, this[i], i, this); mappedArr[i] = mapppedValue; } return mappedArr; }
예상 답안
Array.prototype.filter2 = function(callback, thisArg) { var filteredArr = []; for (var i = 0; i < this.length; i++) { var isTrue = callback.call(thisArg || window, this[i], i, this); if (isTrue) { filteredArr.push(this[i]); } } return filteredArr; }
Quiz2)p111. 예제4-15. / 12~15번째 줄 콜백 함수 표현 바꾸기
var addCoffee = function(name) { return function(prevName) { return new Promise(function(resolve) { setTimeout(function() { var newName = prevName ? (prevName + ', ' + name) : name; console.log(newName); resolve(newName); }, 500); }); }; }; // 이 아래 코드들 addCoffee('에스프레소')() .then(addCoffee('아메리카노')) .then(addCoffee('카페모카')) .then(addCoffee('카페라떼'))
예상 답안
addCoffee('에스프레소')() .then(prevName => addCoffee('아메리카노')(prevName)) .then(prevName => addCoffee('카페모카')(prevName)) .then(prevName => addCoffee('카페라떼')(prevName)) // 비슷한 예시 [1, 2, 3, 4, 5].forEach(console.log)
p113. async/await 쉬운 예제
async function getDelay(target, second) { return new Promise((resolve, reject) => { setTimeout(() => resolve(target), second * 1000); }) } console.log(await getDelay('비동기', 5)); // 5초 뒤에 '비동기' 출력
참고
- 코어 자바스크립트 - 4.콜백함수
📝 요약 및 하루 간단 회고
제주도 여행 와서 진행한 스터디! 오늘은 콜백함수와 비동기 파트를 간단하게 다뤄보았다.<br/> 스터디를 진행하면서 느끼는거지만, 사람들에게 지식을 공유하고 그 과정을 준비하는 게 너무 재미있다. 추후 교육과 관련한 도메인도 열정적으로 임할 수 있을 것 같다. :)
오늘의 잘한 점
- 여행와서도 스터디 진행한 점
오늘의 아쉬운 점
- 없다! 단, 하나도!
undefined