![](http://i1.daumcdn.net/thumb/C148x148/?fname=https://blog.kakaocdn.net/dn/cDJ5oK/btsIqBDmTCk/SMegK1a1RscYokmEj9CP3k/img.png)
내용 구성호이스팅(Hoisting)변수 호이스팅 (Variable Hoisting)함수 호이스팅 (Function Hoisting)TDZ (Temporal Dead Zone)요약 정리마치며 참조 자료https://ui.toast.com/weekly-pick/ko_20191014[코딩만화] Scope가 뭔가요? (feat: let, const, var의 차이) (youtube.com)1. 호이스팅(Hoisting)이란?변수나 함수의 선언이 해당 스코프의 최상단으로 끌어 올려지는 행위이다. 변수와 함수가 호이스팅 되는 경우가 살짝 다른데, 자세히 알아보자. 참고로 var, let, const로 선언한 변수, function 선언과 화살표 함수 모두 호이스팅된다! 다만 let, const, 화살표 함수는 va..
![](http://i1.daumcdn.net/thumb/C148x148/?fname=https://blog.kakaocdn.net/dn/cXRayC/btsHLX8ZZnQ/2e3BTyKGdKmaMDFwPgbRe0/img.png)
https://school.programmers.co.kr/learn/courses/30/lessons/131704 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr1. 풀이메인 컨베이어 벨트에서 꺼내는 택배 상자 번호를 n으로 두자.택배 상자는 번호 증가 순으로 메인 컨베이어 벨트에서 내릴 수 있다. 따라서 n = 1로 초기화하고, 보조 컨베이어 벨트나 트럭에 실을 때마다 1씩 증감해주자. 보조 컨베이어 벨트는 스택 자료 구조이다.보조 컨베이어 벨트에 마지막으로 보관한 상자부터 꺼낼 수 있다. Last In, Last Out. 스택 자료 구조이다. (1단계..
![](http://i1.daumcdn.net/thumb/C148x148/?fname=https://blog.kakaocdn.net/dn/bsTebZ/btsHpPprmx6/BCkeS6bSQQef9iCgfgIeP0/img.png)
https://school.programmers.co.kr/learn/courses/30/lessons/12949 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr1. 풀이n x m 행렬A과 m * b 행렬B를 곱한 행렬은 n * b (m이 동일해야 곱셈 가능) 3중 for문을 사용하자.행렬A의 첫 번째 행인 [1, 1, 1]이 행렬B의 각 컬럼( [1, 4, 7], [2, 5, 8], [3, 6, 8])과 연산된다. 따라서 일단 행렬A의 행에 접근하는 for문이 필요하다.그리곤 이제 하나의 행에 대해 3개의 열이 연산되어야 하므로, 컬럼을 인덱싱하는 반복문이..
![](http://i1.daumcdn.net/thumb/C148x148/?fname=https://blog.kakaocdn.net/dn/cH6fZc/btsGM2QXYLB/MbkEoJag72euvu4KRECM60/img.png)
내용 순서 스코프 (Scope) 글로벌 스코프 (Global Scope) - Script, Global 함수 스코프 (Function Scope) 블록 스코프 (Block Scope) 스코프 체인 (Scope Chain) 요약 정리 마치며 참고자료 JavaScript - Execute context (youtube.com) [NHN FORWARD 2021] 결국 자바스크립트를 알아보기로 했다. (youtube.com) 1. 스코프 (Scope) 범위라는 영단어인 스코프는 자바스크립트에서도 코드가 접근할 수 있는 변수들의 범위를 의미한다. 넓은 의미론 이전에 포스팅했던 실행 컨텍스트의 메모리 영역에 해당한다고 보면 된다. 여러 종류의 스코프가 존재하고, 각 스코프를 잘 이해하는 것이 중요하다. 또 다른 핵..
![](http://i1.daumcdn.net/thumb/C148x148/?fname=https://blog.kakaocdn.net/dn/cRHIjO/btsGqiSIgBu/xkaBJ8Vlg4TM7KJ9jfLJM1/img.png)
내용 구성 상황과 문제점 전략 패턴(Strategy Pattern)이란? 소셜 로그인 인터페이스 정의 Controller 코드 수정 Service 코드 수정 마무리 1. 상황과 문제점 요약: 확장성이 고려되지 않은 기존 소셜 로그인 코드에, 카카오 로그인 기능을 추가해야 하는 문제! 현재 프로젝트는 애플 로그인만 지원한다. 기획할 때부터 그러기로 했고, 그렇게 개발과 1차 배포를 끝냈다. 프로젝트를 재정비하면서 카카오 로그인을 추가 지원하기로 결정했다. 내가 카카오 로그인 기능을 맡았으므로, 일단 기존 소셜 로그인 코드를 확인했다. @Controller('auth') export class AuthController { @Post('login') login(@Req() request, @Body() cr..