1. 프로그래머스 같은 숫자는 싫어 문제 설명 배열 arr가 주어집니다. 배열 arr의 각 원소는 숫자 0부터 9까지로 이루어져 있습니다. 이때, 배열 arr에서 연속적으로 나타나는 숫자는 하나만 남기고 전부 제거하려고 합니다. 단, 제거된 후 남은 수들을 반환할 때는 배열 arr의 원소들의 순서를 유지해야 합니다. 예를 들면, arr = [1, 1, 3...
1. 프로그래머스 정수 제곱근 판별 문제설명 임의의 양의 정수 n에 대해, n이 어떤 양의 정수 x의 제곱인지 아닌지 판단하려 합니다. n이 양의 정수 x의 제곱이라면 x+1의 제곱을 리턴하고, n이 양의 정수 x의 제곱이 아니라면 -1을 리턴하는 함수를 완성하세요. 제한 사항 n은 1이상, 50000000000000 이하인 양의 정수입니다. 입출력 ...
1. Leetcode #1342 문제 양의 정수 num이 주어졌을 때 num을 0까지 줄여가는 과정을 작성하는 문제인데 현재 숫자가 짝수인 경우 2로 나누고 홀수인 경우는 1을 빼야한다. 몇 번이나 과정을 반복했는지를 리턴해야 한다. 입출력 예시 제한사항 `0 횟수를 리턴해야하니 count라는 변수를 선언 후 num 만큼 while 반복문을 돌리고 짝수...
1. 프로그래머스 완주하지 못한 선수 문제 설명 수많은 마라톤 선수들이 마라톤에 참여하였습니다. 단 한 명의 선수를 제외하고는 모든 선수가 마라톤을 완주하였습니다. 마라톤에 참여한 선수들의 이름이 담긴 배열 participant와 완주한 선수들의 이름이 담긴 배열 completion이 주어질 때, 완주하지 못한 선수의 이름을 return 하도록 solut...
textContent Node 인터페이스의 textContent 속성은 노드와 그 자손의 텍스트 콘텐츠를 표현한다. 위 코드와 같이 textContent 메소드를 사용하면 리턴값으로 문자열 또는 null을 리턴한다. textContent의 값은 상황에 따라 다르다. 노드가 document 또는 Doctype이면 null을 리턴한다. 노드가 CDATA 구획...
오늘의 TIL은 따로 없다. 그래서 일기 형식으로 써야겠다. 팀원들을 위해 자바스크립트 문법 정리를 하고 있는데 하다보니 하루가 다 지나가버렸다. 대충 이런식으로 리포지토리를 하나 만들어 README 파일에 작성중이다. 나도 이걸 정리하면서 공부했던 걸 다시 보니 그 당시에는 이해가 안되던 것들이 이해가 되기도 했다. 특히 스코프와 클로져 파트가 새로 보...
공부한 것 React component, props 생성법, React내에서 .map 사용법 JSX를 익혔다. 요 며칠 TIL을 쓸 시간도 없이 굉장히 바쁘게 지냈다. 팀 정기 미팅도 가지고 리액트 공부 알고리즘 풀이 등등 여러가지를 한꺼번에 하다보니 밥도 잘 챙겨먹지 못했고 휴식을 제대로 못했던 것 같다. 그래서 장염으로 3일정도 고생을 했고 이제 거의...
react router dom 활용/각 페이지 분리/HashRouter와 Link... 5월 23일자를 24일에 올린다..🤮 너무 시간이 빠르게 지나갔다. 리액트 강의를 들으면서 하다보니 폭풍처럼 뭐가 지나간것 같은데 어느새 하루가 지나있다. 이제 자고 일어나면 만들었던거 코드 분석을 해봐야겠다. 그냥 보고 따라만든거라 완전히 체득이 안됐다. 리액트 ...
ES6에서 템플릿 리터럴이라고 불리는 새로운 문자열 표기법이 생겼다. 이전에는 문자열을 표현하기 위해선 ' 또는 "를 사용했는데, 템플릿 리터럴은 백틱을 사용한다. 템플릿 리터럴은 ' 와"를 혼용해서 사용할 수 있다. 그리고 이전에는 줄바꿈을 표현하기 위해선 \n을 넣어줘야 인식을 했지만 템플릿 리터럴은 있는 그대로 인식한다. 또한, 변수를 선언하고 그것...
노마드코더에서 본 영화 앱을 개선시키는 작업을 하는 중인데 한 가지 난관에 봉착했다. 원하는 영화를 클릭했을 경우 영화의 상세 정보를 보여주는 페이지를 추가중인데 제목, 개봉연도, 줄거리, 포스터 등은 API에서 받아오는데 성공 했는데 장르는 배열로 만들어져있어 가져오는데 애를 먹고 있다. 함수형 컴포넌트로 불러오면 문제가 없겠지만 클릭한 영화의 ID를 기...
리액트 라이프사이클 이벤트 라이프사이클 이벤트는 무엇일까? React의 컴포넌트는 생명주기(life cycle)을 가지고 있다. 생명주기란 컴포넌트가 생성되고 사용되고 소멸될 때 까지의 과정을 말한다. 이런 생명주기 안에서는 특정 시점에 자동으로 호출되는 메서드들이 있는데, 이것들을 라이프사이클 이벤트라고 한다. 간단하게 constructor, compo...
오늘은 따로 공부를 했다기 보단 딴 짓을 한번 해봤다. 개발자를 하겠다고 마음먹은 뒤로 처음으로 오픈소스 프로젝트 contributor에 이름을 올려봤다. 리액트 공부를 하다가 집중력이 떨어져서 깃허브를 둘러보고 있던 도중 최근에 만들어진 프로젝트를 발견했다. Contributor에 올라간 나의 깃허브 아이디!! 그렇게 크지 않은 소규모의 프로젝
취업 후 4달만에 쓰는 블로그라니.. 😱 그 동안 바쁘다는 핑계로 너무 소홀했던 것 같다. 매일매일은 아니더라도 꾸준히 글을 써야겠다는 다짐(작심삼일)을 하면서 오랜만에 글을 써본다. 성능 최적화에 대해 설명하기에 앞서 React에서 렌더링이 일어나는 이유에 대해 알아야 한다. React에서 렌더링을 실행하는 과정 React에서 렌더링을 수행하는...
이번에 이직을 하게 되면서 오늘 드디어 출근을 해서 첫 업무를 시작하였다. 사실 지금 다니는 회사는 IT회사가 아니라 개발문화나 환경이 제대로 구축이 되어 있질 않은 상태이다. 그래서 동기와 함께 개발문화를 새로 만들어 나가기로 마음먹고 회사 github 계정을 만들어 Organization을 생성하였다. 테스트용 repository를 만들어 여러 ...
이전 블로그에서 글 옮김해시테이블은 Key, Value 페어로 데이터를 저장하는 자료구조의 유형 중 하나로 빠르게 데이터를 검색할 수 있는 자료구조 입니다.해시테이블이 빠른 검색속도를 제공하는 이유는 내부적으로 배열(버킷)을 이용하여 데이터를 저장하기 때문입니다. 해시
이전 블로그에서 글 옮김이번에 알림톡을 이용해서 휴대폰 인증번호를 보내는 기능을 구현하기 위해 찾아보다 네이버 NCP(Naver Cloud Platform)을 이용해 알림톡 보내기가 가능하다 해서 작업해봤습니다.카카오 비즈니스에 따르면 알림톡 기능을 이용하기 위해서는
이전 블로그에서 글 옮김각설하고 이렇듯 브라우저라는 것이 웹에 있어서 뗄래야 뗄 수 없는 그런 존재이다. 그럼 과연 브라우저는 어떻게 동작을 하는지 알아보자.브라우저의 주요 기능은 사용자가 선택한 자원을 서버에 요청하고 브라우저에 표시하는 것이다. 자원은 보통 HTML
이전 블로그에서 글 옮김프로세스는 운영체제 위에서 연속적으로 실행되고 있는 프로그램이다. 지금 내가 글을 쓰고 있는 웹스톰도 하나의 프로세스이 글을 읽을 수 있는 크롬도 하나의 프로세스 이다. 현재 실행중인 프로그램 모두 프로세스를 가지고 있다.각 프로세스는 메모리 위
이전 블로그에서 글 옮김가비지컬렉터의 역할은 자바스크립트 엔진이 메모리 할당을 모니터링하고 할당된 메모리의 블록이 더 이상 필요하지 않은 시점을 확인하여 회수하는 것이다.가비지컬렉터는 Reference-counting알고리즘과 Mark-and-sweep 알고리즘에 따라
이전 블로그에서 글 옮김코드의 실행환경에 대한 여러가지 정보를 담고 있는 개념 으로, 간단히 말하자면 자바스크립트 엔진에 의해 만들어지고 사용되는 코드 정보를 담은 객체의 집합이라고 할 수 있다.자바스크립트의 코드는 3가지 종류로 이루어지는데, 글로벌 스코프에서 실행하
우선 Next.js는 자체 서버 위에서 돌아가니 server와 관련된 폴더에 관련된 코드가 있을 것이라고 생각했다. Next.js 레포를 들어가서 찾아보니 packages/next/src/server/lib/start-server.ts 파일을 발견할 수 있었다. 아래