본문 바로가기
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] 콜백함수 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.
[문제풀이] 문자열 갖고 놀기..? 문제설명 수업시간에 풀었던 문젠데 재밌게 풀어서 정리해 봄 1. string 변수에 할당된 문자열에 포함되어 있는 'e' 갯수 출력 2. string 변수에 할당된 문자열을 5개씩 나눠서 배열에 담아서 출력 3. 2의 결과에서 e, z, d, v, n이 포함된 value 삭제 후 출력 4. 3의 결과에서 value가 중복된 문자 / 숫자 가 있을 경우 중복된 문자 / 숫자 삭제(하나는 남김) 문제에서 제시한 예시와 각 문제에서 요구하는 출력값은 아래와 같다 let string = '1e5315166152e1152z1d1v4b1n'; // 2, // [ '1e531', '51661', '52e11', '52z1d', '1v4b1', 'n' ], // [ '51661' ], // [ '516' ] 접근방법 .. 2022. 1. 6.
[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.
[문제풀이] 짱구의 마스크 소분 문제설명. 짱구가 마스크를 소분 하는 작업을 한다. 마스크를 담을수 있는 봉투에는 두가지 종류가 있는데, 하나는 5개의 마스크를, 나머지 하나는 3개의 마스크를 담을 수 있다. 총 마스크 갯수 n개가 주어졌을 때, 최소한으로 사용하는 봉투의 갯수를 return 하는 함수를 작성하라. 단, 봉투에 딱 떨어지게 담겨지지 않는 경우는 -1을 return 한다. 접근방법. 쉬울줄 알았는데 어려웠다. 우선 얼리리턴을 할 수 있는 경우를 생각해봤다. 1. n이 5의 배수인 경우 에는 n/5를 리턴하면 되고 2. n이 3보다 작거나, 4인경우에는 -1을 리턴하면 된다. 나머지의 경우는 for 문으로 5씩 빼면서 answer 에 1을 더하고, 남은 수가 3으로 나눠지면 n/3으로 나눈 값을 answer에 더해주면 되지.. 2022. 1. 3.
[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.
[Javascript] if 조건문 0.목차 1. if 2. else 3. else if 자바스크립트의 기본 문법중 if 조건 문에 대해 알아보자. 기본 적으로 생긴 모양을 보면 if(){}; 요렇게 생겼다. 물론 아직은 생기다 말았다. 비어있는 괄호안에 들어가는 내용들은 코드가 실행될 조건과, 조건이 true를 반환할때 실행되는 코드다. if(조건){ 위의 조건이 true 일때 실행될 코드 }; 이렇게만 보면 애매한데 예제를 보면 좀더 이해가 쉽다. let eat = true; if (eat) { console.log('배불러'); } // 배불러 위의 조건으로 들어간 변수 eat은 true 이므로 배불러가 출력된다. let eat = false; if (eat) { console.log('배불러'); } 이 예제에선 eat의 값이 fa.. 2021. 12. 30.
[Javascript] 연산자 / template literal / == 과 === 0. 목차 1. 개요 2. 산술연산자 3. 연결연산자 4. 비교연산자 5. 논리연산자 1. 개요 자바스크립트의 연산자 종류는 진짜 많다. 이걸 다 통채로 외우다가는 한세월 다 보낼 지도. https://developer.mozilla.org/ko/docs/Web/JavaScript/Guide/Expressions_and_Operators 표현식과 연산자 - JavaScript | MDN 이 장은 JavaScript의 표현식과 할당, 비교, 산술, 비트 계산, 논리, 문자열, 삼항 등 여러 가지 연산자를 설명합니다. developer.mozilla.org 한번 읽어보는 걸로 만족하고 기본적인 것만 해보자. 2. 산술연산자 사칙연산 하면 다 아는거다 더하기 빼기 나누기 곱하기 기호도 똑같이 + - / * 를.. 2021. 12. 30.
[Javascript] 변수의 선언과 할당 0.목차 1. 개요 2. 변수 선언 / 할당 3. 데이터의 타입 0. 개요 드디어 자바스크립트다. 보고싶었다구... 수업에서 다룬내용을 토대로 내가 아는 지식 + 검색내용들을 토대로 정리할 생각이다. 1. 변수 선언 / 변수 할당 1-1. 변수선언 Javascript 에서 변수를 선언 하기 위해선 지정된 예약어를 사용해야한다  예약어 : 프로그래밍 언어에서 문법적인 용도로 이미 사용하기로 약속 되어있는 단어 변수를 선언할 때, 사용할 수 있는 예약어는 var, let, const 가 있다. 이 세가지의 차이점은 다음에 자세히 다루기로하고 오늘은 수업에서 사용한 let만 사용하기로 한다. let number; 변수를 선언할때는 규칙이 있다. 변수의 시작은 숫자로 할 수 없다. 예약어는 변수로 사용할 수 .. 2021. 12. 30.
728x90
728x90