profile
열심히 노력하는 신입 프론트엔드 개발자 문건우입니다.
태그 목록
전체보기 (185)JavaScript(45)알고리즘(40)프로그래머스(25)React(20)python(14)leetcode(13)부스트캠프(12)삽질(12)후기(8)typescript(8)js(7)ts(5)DSC(5)면접(5)next.js(5)next(5)멤버십(5)타입스크립트(5)DND(4)프론트엔드(4)express(4)boj(4)Nginx(3)카카오 코딩테스트(3)TIL(3)회고(3)debounce(3)리액트(3)우아한 테크 캠프(3)SSR(3)에러(3)컨퍼런스(3)위상정렬(3)webpack(3)백준(3)NHN Forward(3)redux(3)ES5(2)array(2)프로젝트(2)Recoil(2)throttle(2)key(2)ES6(2)리뷰(2)데브매칭(2)동아리(2)ux(2)https(2)(2)boostcamp(2)카카오 인턴(2)typeOrm(1)UI(1)action(1)cutom hook(1)error(1)Node(1)Saga(1)Tree Shaking(1)썸머코딩(1)garbage colerctor(1)ncloud(1)부산(1)자동배포(1)데이터베이스(1)목표(1)프론트엔드과제(1)useReducer(1)this(1)arrow function(1)mysql(1)챌린지(1)CSS(1)html(1)useCallback(1)Context API(1)es8(1)개발자(1)화살표 함수(1)PNU(1)홍보(1)개발자의 디자인 독해력(1)code splitting(1)상속(1)lazy(1)cookie(1)HMR(1)babel(1)Summer/Winter 코딩(1)dd(1)훌륭한 개발자(1)웹 표준(1)private(1)그룹 프로젝트(1)emotion(1)트랜스파일(1)생성자(1)카카오 인턴 코딩테스트(1)test(1)corejs(1)레디스(1)nextjs(1)웹 접근성(1)clipboard(1)웹팩(1)sql(1)figma(1)ScrollIntoView(1)우테캠(1)자료구조(1)dynamic routing(1)Sequelize(1)shell(1)트리 쉐이킹(1)React Hooks(1)Symbol(1)생각정리(1)bind(1)우아한 형제들(1)코드 스플리팅(1)queue(1)배포(1)호이스팅(1)개발(1)세션(1)쿠키(1)카카오(1)코딩테스트(1)해커톤(1)객체(1)Index(1)확장(1)arguments(1)Trie(1)유틸리티 타입(1)Prototype(1)NaN(1)카카오 알고리즘(1)class(1)책 리뷰(1)사이드프로젝트(1)

호이스팅은 왜 생기는 걸까?

호이스팅은 보통 변수를 위로 끌어올리는 것이라는 표현을 많이한다. 그렇다면 개발자들을 헷갈리게 하는 호이스팅을 왜 만들었을까?? 이를 알기 위해서는 JS엔진이 JS를 어떻게 해석하고, 어떻게 Excution Context를 만들고 어떤 작업을 하는지를 알아야한다.JS엔

2021년 2월 12일
·
0개의 댓글

Symbol

자바스크립트는 객체 프로퍼티 키로 문자형과 심볼형만을 허용한다. 숫자형, 불린형 모두 불가능하다.Symbol은 ES6에 새로 추가된 원시 타입이다. 심볼은 유일한 식별자를 만들고 싶을 때 사용한다.심볼은 unique 하기 때문에, description이 같아도 충돌하지

2021년 2월 12일
·
0개의 댓글

생성자 함수와 class의 차이

자바스크립트에서 객체를 만들기 위한 템플릿으로 생성자 함수와 class를 사용한다. class는 생성자 함수에서 사용하기만 편하게 한 편의적 문법(syntactic sugar)라고 하는 사람들이 많다. 하지만 동일한 역할을 하는 것 외에도 추가적인 기능들이 있다.cla

2021년 2월 11일
·
0개의 댓글

private한 속성을 만들어보자.

예전엔 속성명에 \_를 프리픽스 해서 사용했다고 한다. 하지만 private 하게 쓰자라는 컨벤션이지 private하지 않다. 그래서 이제 \_는 거의 사용하지 않는다.근본적으로 접근이 불가능한 private 속성을 만드는 방법으로는 클로저를 이용하는 방법이 있다.비슷

2021년 2월 10일
·
0개의 댓글

NaN

NaN은 Not A Number(숫자가 아님)를 나타낸다.NaN을 반환하는 연산에는 5가지 종류가 있다.숫자로써 읽을 수 없음.(parseInt('문자열'), Number(undefined)결과가 허수인 계산식 (Math.sqrt(-1))피연산자가 NaN (7 \*\*

2021년 2월 10일
·
0개의 댓글
post-thumbnail

객체의 확장을 막는 방법

객체의 확장을 막는 방법으로 가장 유명한 Object.freeze 가 있다. 하지만 Object.freeze도 깊은 freeze는 하지 못한다. 그리고 찾아보니 freeze 말고 다른 메소드로도 객체의 확장을 막는 방법들이 있었다.이를 이해하기 위해서는 먼저 객체의 프

2021년 2월 8일
·
0개의 댓글

[프로그래머스 Level2] 쿼드 압축 후 개수 세기 javascript

https://programmers.co.kr/learn/courses/30/lessons/68936분할 정복 기법을 사용해서 재귀적으로 풀면 된다. 정사각형이기 때문에 반으로 딱 나눠지고 그것을 조건에 따라 4등분 하여 다시 똑같이 진행해주면 된다.

2021년 1월 4일
·
0개의 댓글

[프로그래머스 Level 2] 이진 변환 반복하기 javascript

https://programmers.co.kr/learn/courses/30/lessons/70129이진 수를 받아서 모든 0을 제거하고, 남은 길이를 다시 2진법으로 변환한 후, 1이 될때까지 계속 반복하면 되는 문제다.reduce를 사용해서 0일 경우 ze

2021년 1월 4일
·
0개의 댓글

[프로그래머스 Level 1] 3진법 뒤집기 javascript

https://programmers.co.kr/learn/courses/30/lessons/689353진법으로 변환하기 위해서 n % 3 을 한 값을 넣어준다. 그리고 n 을 n /3 한 값으로 바꿔주면서 반복을 해주면 3진법으로 변환 된다. 이 때 unshi

2021년 1월 4일
·
0개의 댓글

[프로그래머스 Level 1] 내적 javascript

https://programmers.co.kr/learn/courses/30/lessons/70128간단한 문제이다. a와 b의 숫자 배열이 주어졌을 때 같은 index의 값끼리 곱한 것을 다 더해주면 되는 문제이다.간단하게 Array.prototype.red

2021년 1월 4일
·
0개의 댓글

[LeetCode] Pairs of Songs With Total Durations Divisible by 60

time 배열이 주어지고 2개를 더 했을 때 60으로 나눠지는 값이 몇개인지 구하는 문제.i < j 이다.ExampleInput: time = 30,20,150,100,40Output: 3Explanation: Three pairs have a total dura

2020년 12월 30일
·
0개의 댓글
post-thumbnail

Javascript Garbage Colector

자바스크립트는 저수준 언어와는 다르게 객체가 생성되었을 때 자동으로 메모리를 할당하고 쓸모 없어졌을 때 자동으로 해제한다(가비지 컬렉션).메모리의 생명 주기는 프로그래밍 언어와 상관없이 비슷하다.필요할때 할당한다.사용한다. (읽기, 쓰기)필요없어지면 해제한다. 3번의

2020년 8월 27일
·
0개의 댓글
post-thumbnail

JS에서 일정 길이의 배열을 만드는 방법 3가지

js에서 일정 길이의 배열을 만드는 방법에는 여러 가지가 있다. 진짜 아무것도 모른다면 다음과 같이 할 수 있을 것이다.이렇게 하면 undefined 10개로 찬 array가 만들어질 것이다. 하지만 이 코드는 반복문을 쓰면서 push를 하나씩 하기 때문에 보기에 좋지

2020년 8월 26일
·
0개의 댓글
post-thumbnail

Promise.all 과 Promise.allSettled 의 차이

Promise.all 과 Promise.allSettled의 차이를 알아보려고 한다. 두 메소드다 여러 개의 Promise들을 병렬적으로 실행시키기 위한 메소드이다. Promise를 3개 만들었다. 그리고 all Method를 통해 실행 시켰다. 그러면 promise1

2020년 8월 26일
·
0개의 댓글
post-thumbnail

JS에서 상속을 구현하는 방법 3가지

javascript는 prototype 기반 언어이다. 그래서 상속을 구현하기 위해 사람들이 여러 방법을 고안 했다. 그 중에 하나가 Bridge라는 다리 역할을 해주는 생성자들 만들어서 하는 방법이다. Bridge 생성자를 만들어 상속하는 방법은 더글라스 크락포드가

2020년 8월 25일
·
0개의 댓글
post-thumbnail

Object는 왜 생성자에 메소드가 많을까??

Object 생성자는 유독 다른 생성자 보다 메소드가 많은 것 같다. 착각일까? 한번 알아보자콘솔창에 Array. 해서 메소드들을 보면 몇 개 없다. 대부분 Array.prototype에 메소드들이 있는 것을 볼 수 있다. String이나 Number 등도 마찬가지로

2020년 8월 24일
·
0개의 댓글
post-thumbnail

Debounce란?

Debounce는 연속적으로 호출되는 함수들 중 마지막 함수(또는 제일 처음)만 호출하도록 하는 것입니다. 왜 이렇게 하는 것일까요? 우리는 사용자의 마지막 행동에만 관심이 있기 때문입니다. 검색을 하는 방법에도 여러가지가 있을 것입니다. 예를 들어 검색어를 입력하고

2020년 7월 17일
·
0개의 댓글
post-thumbnail

JS Array some, every 메소드 구현

Array.prototype.some, Array.prototype.every라는 메소드가 있다. Array.prototype.some은 콜백함수를 받아 배열의 원소 중에 하나라도 해당 함수를 만족한다면 true를 반환해주는 함수이다. 아니라면 false를 반환한다.A

2020년 7월 15일
·
0개의 댓글
post-thumbnail

JS Queue 구현해보기

Queue는 기본적인 자료구조이다. first-in first-out으로 먼저 들어온 노드가 먼저 나간다.이러한 Queue는 javascript에서 array.prototype.push 와 array.prototype.shift()로 간단하게 구현할 수 있다. 하지만,

2020년 7월 14일
·
0개의 댓글
post-thumbnail

JS map, filter 메소드 구현 해보기

map은 Array.prototype에 있는 메소드로써, 콜백함수를 받아서 각 원소마다 배열의 원소마다 콜백함수를 실행한 새로운 배열을 반환한다.filter 또한 Array.prototype에 있는 메소드로써, arr에서 특정 조건의 원소들을 제거하는데에 유용하다. 말

2020년 7월 14일
·
0개의 댓글