본문 바로가기
728x90
728x90

JavaScript12

[Javascript] async 와 await 0. 목차 1. 개요 2. async 3. await 4. 응용..? 1. 개요 https://kong-dev.tistory.com/120 [Javascript] 콜백지옥과 프로미스 0. 목차 1. 콜백지옥 2. 프로미스 1. 콜백지옥 프로미스를 이해하기 위해선 콜백 지옥을 이해해야 한다. 콜백지옥을 이해하기 위해선 콜백펑션을 이해해야 한다. .. ㅎ https://kong-dev.tistory.com/116?categ kong-dev.tistory.com 저번 포스팅에서 프로미스를 다뤘었다. 그런데 프로미스도 then mthod를 연속적으로 체이닝 하다보면, 이 then은 뭐고 저then은 뭐고, 이 데이터는 어디 resolve에서 가져온걸까.. 싶은 생각이 들게된다. 그래서 나온게 async와 awa.. 2022. 1. 30.
[Javascript] 콜백지옥과 프로미스 0. 목차 1. 콜백지옥 2. 프로미스 1. 콜백지옥 프로미스를 이해하기 위해선 콜백 지옥을 이해해야 한다. 콜백지옥을 이해하기 위해선 콜백펑션을 이해해야 한다. .. ㅎ https://kong-dev.tistory.com/116?category=991165 [Javascript] 콜백함수 0. 목차 1. 개요 2. 콜백함수란 1. 개요 setTimeout(() => { console.log('hello world'); }, 1000); 이 코드를 보자. 콜백함수에 대한 개념이 잡히기 전의 나는 이 코드를 1000ms 가 지난뒤에, 에로우 펑션 안의.. kong-dev.tistory.com 최근에 정리한 콜백함수에 대한 글. 기억이 안나면 다시 보면 될듯. 우선 억지로 억지로 콜백 지옥을 하나 만들어 보.. 2022. 1. 28.
[javascript] avante 클론코딩 회고록 0. 목차 1. 개요 2. 결과물 3. 진행 중 이슈 및 해결 4. 후기 1. 개요 1월 10일 부터 1월 14일 까지 진행한 아반떼 클론코딩. 처음엔 언제 다하나 싶었는데 하나하나 하다보니 제법 만족스러운 결과물이 나왔다. 하루하루 진행할때마다 있었던 이슈 같은걸 정리하려고 했는데, 막상 시작하고 나니 만드는데 급급해서 그때그때 정리를 못했다. 한번에 정리를 하려니까 이것도 막막하네... 2. 결과물 최애애애대한 눈에 보이는 기능들은 다 구현해보려고 노력을 했다. 그래서 이것저것 해보다 보니 여기저기서 이슈들이 생기더라구... 3. 이슈 및 해결 진짜 뒤지게 많은 이슈가 있었다. 짜잘짜잘한 오타이슈 까지 다 합치면 아마 3천개는 됐을듯..? 그래도 짜잘한거 말고 큼직하게 좀 기억에 남는 것들만 정리해보.. 2022. 1. 16.
[Javascript] 콜백함수 0. 목차 1. 개요 2. 콜백함수란 1. 개요 setTimeout(() => { console.log('hello world'); }, 1000); 이 코드를 보자. 콜백함수에 대한 개념이 잡히기 전의 나는 이 코드를 1000ms 가 지난뒤에, 에로우 펑션 안의 코드를 실행한다. 라고 이해했다. setTimeout(()=>{ // delaytime 이후 실행될 코드 },delaytime) 라고 그냥 통째로 무지성으로 외웠다. 콜백펑션이 뭔지 정확히 알지 못했으니까, addEventListener 역시 마찬가지다. elem.addEventListener(('click'),()=>{ //elem이 클릭 됐을때 실행될 코드 }) 라고 그냥 통째로 머릿속에 집어넣고 외웠다. 사실, 코드를 짤때는 이렇게 이해해.. 2022. 1. 10.
[Javascript] 객체의 비교와 복사 0.목차 1. 개요 2. premitive 와 reference 가 메모리에 저장 되는 방식 2. 얕은복사 3. 깊은복사 1.개요 const a = { num: 1 }; const b = { num: 1 }; console.log(a === b); a라는 객체와 b라는 객체를 만든 뒤에 동일한 프로퍼티를 생성해 주었다. 두개를 비교한 값을 출력해보자. const a = { num: 1 }; const b = { num: 1 }; console.log(a === b); // false 분명 우리눈에는 똑같이 생겼는데, false가 출력 된다. 이걸 이해하기 위해서 메모리에 데이터를 저장하는 방법을 조금 알아볼 필요가 있다. 2. premitive 와 reference 가 메모리에 저장 되는 방식 그림을 그.. 2022. 1. 7.
[Javascript] 메서드와 프로토타입 0.목차 1. 개요 2. 메서드 3. 프로토타입 1.개요 우린 코드를 짜면서 정말 많은 메서드들을 사용한다. 메서드 없는 코딩을 상상하면 정말 끔찍하다. 너무나 소중한 메서드들... 메서드의 종류는 MDN한테 물어보고, 이번엔 메서드와 메서드의 깐부 프로토타입에 대해 조금 정리해보려한다. 2.메서드 2-1. 메서드란 메서드는 함수다. 근데 그냥 함수가 아니고, 객체에 들어있는 함수다. 이거 이상의 설명은 없을 듯..? 2-2. 메서드 만들기 그럼 직접 만들어 보자. const kong = { age: 29, introduce: function () { console.log(`I'm ${this.age}years old`); }, }; kong이라는 object를 만들고 age의 value에는 29을, i.. 2022. 1. 6.
[Javascript] 10진수를 x진수로 변환하기(직접구현) https://kong-dev.tistory.com/111?category=982997 [Javascript] 3진법 뒤집기 문제설명 자연수 n이 매개변수로 주어집니다. n을 3진법 상에서 앞뒤로 뒤집은 후, 이를 다시 10진법으로 표현한 수를 return 하도록 solution 함수를 완성해주세요. 제한사항 n은 1 이상 100,000,000 이하 kong-dev.tistory.com 이 문제 풀다가, 어 이거 직접 구현은 어떻게 하는 걸까 싶어서 구글링을 해봤는데 전부다 메서드랑 내장 함수만 알려주고 직접 구현한건 하나도 없다. 왠지 할 수 있을거 같아서 해봤는데 잘 된다. 이 글에선 진법변환 하는 메서드랑 내장함수는 안다룰 거다. 지천에 널린게 그건데 굳이 나까지... 아 그리고 10진수를 x진수로.. 2022. 1. 4.
[Javascript] this 동적 바인딩 0.목차 1. 개요 2. 메소드 생성 3. 메소드 호출 4. this 바인딩 1. 개요 수업에서 객체를 다뤘다. 혼자 객체도 만들어보고 메소드도 만들어보고 메소드로 property 참조하고 이것저것 해보다가, 어느 순간 깨달음이 와버렸다. 까먹기 전에 정리를 해보자. 2. 메소드 정의 const obj = { a: 1, print() { console.log('print'); }, }; obj라는 객체를 하나 만들고, 프로퍼티 하나 메소드 하나씩 만들어줬다. 메소드는 익명함수 안쓰고 스마-트 하게 method shorthand 써서 만들었다. es6에서 추가된 기능이다. 기존(es6 이전)에 어떤 형식으로 만들어졌는지 모른다면 문제가 되겠지만, 아니까 걍 쓰겠다. 3. 메소드 호출 const obj = .. 2022. 1. 4.
[Javascript]var, let, const 차이점 0. 목차 1. 개요 2. let, const 3. var 4. 결론 1. 개요 변수를 선언하는 예약어에는 var, let, const 세가지가 있다. 크게 나누자면, ES6이전 즉, ES5까지 사용되던 var 와 ES6에 새롭게 추가된 let과 const가 있다. 모든 강의와, 모든 책에서 var사용을 지양하고, let, const 사용을 권장한다. 세가지 예약어의 차이점과, var 사용을 권장하지 않는 이유에 대해 알아보자. 2. let, const 2-1. let let 은 const와 함께 ES6에서 추가된 기능이다. 변수를 선언한다는 점에선 동일하지만, 값의 재할당의 가능 여부에서 차이가 드러난다. let 으로 선언한 변수는 재할당이 가능하다. //선언&할당 let num = 1; console.. 2022. 1. 3.
소수판별하기 이거 소수판별이라고면 치면 나오는 내용이긴한데 한번 정리해두면 안까먹을거 같아서 정리해보려한다. 어떤 숫자가 소수인지 아닌지 판별을 할때는 2부터 그 숫자-1까지 하나하나 나누면서 조져보는 방법과 2부터 그 숫자의 제곱근 까지 하나하나 나누면서 조지는 방법이 있다. 코드로 보면 function checkPrime(number) { if(number === 1)return false; if(number === 2)return true for(let i = 2; i 2021. 12. 14.
call, apply, bind 삼총사 처음 나왔을 때 개념을 확실히 못잡은 채로 내비뒀더니 얘네가 나올때마다 '뭐더라..' 하면서 매번 다시 MDN을 뒤지게 된다. 우리집 시니어의 도움을 받아 지금 개념을 잡아놨으니, 까먹기 전에 정리를 해두자. this binding 쟤네를 이해하려면, 선결과제가 있다. this binding을 이해해야 한다. this는 this고 binding은 뭘까 묶다.감다. 약간 느낌이 온다. this binding은 this에다가 뭔갈 묶는 거구나. const cityinfo = { city: 'Seoul', weather: 'cold', }; function tellWeather() { return `today's ${this.city}'s weather is ${this.weather}'`; } console.. 2021. 12. 5.
내 애착 메소드 Array.from 으로 표 만들기 Array.from으로 표를 만들 수 있다. 사실 아니다. 배열인데 모양이 표 모양이다. 이걸 2차원 배열 이라고 한단다. 놀라운 배열의 세계. 내가 처음 본 코드는 const graph = Array.from(Array(n), () => Array(n).fill(0)) 이거였다. 길이가 n인 배열을 각 value에 길이가 n이고 value가 0인 배열을 만들겠다는건데.. [ [ 0, 0, 0, 0, 0, 0 ], [ 0, 0, 0, 0, 0, 0 ], [ 0, 0, 0, 0, 0, 0 ], [ 0, 0, 0, 0, 0, 0 ], [ 0, 0, 0, 0, 0, 0 ], [ 0, 0, 0, 0, 0, 0 ] ] n이 6이라 치면 이런 배열 만들겠다는 거다. 이걸 2차원 배열이라 하나봄 저 코드처음 봤을 때.. 2021. 12. 3.
728x90
728x90