코딩테스트를 하다보니 문자열을 배열로 만들어줘야 하는 상황들이 많이 생겼다. 그동안은 split("")을 통해서 배열로 만들어주었는데, Array.from을 통해서 만들 수 있는 방법을 알게 되었다.Array.from은 문자열, 유사배열객체 등을 배열로 만들어주는 메서
sort를 통해 오름차순과 내림차순으로 정리할 수 있다. 코딩테스트 문제를 풀다보면 결국 오름, 내림 차순으로 정리해야 할 때가 많은 때 sort 메서드를 통해서 쉽게 가능하다.숫자 뿐만이 아니라 알파벳도 가능하며 콜백함수를 통해서 원하는대로 정렬도 가능하다.sort는
재귀함수란 어떤 함수 내에서 자기 자신을 호출하는 함수를 말한다. 자주 사용하는 반복문 대신 쓸 수 있는 아주 유용한 함수이다. 다만, 자기 자신을 계속해서 부르는 것이기 때문에 종료 조건을 반드시 명확히 잘 써주어야 한다.재귀함수를 사용하는 곳은 반복문을 사용하는 곳
소인수 분해란 소수들의 곱으로 표현하는 것을 말한다. 그리고 소인수란 주어진 자연수를 나누었을 때, 약수가 소수 즉 1 하나만 있는 경우의 수를 말한다. 말 그대로 소인수이다. 먼 옛날... 수학 시간이 갑자기 떠올랐다..그러하다. 소인수 분해란 어떠한 자연수를 나누었
parseInt를 처음 활용하게 된 건 소수점을 버리고 싶을 때였다. 소수점을 버릴 수 있는 기능만 있는지 알았는데 코딩테스트를 풀며 다양하게 활용할 수 있다는 것을 알게되었다.string부분에는 숫자로 변환하고 싶은 문자열을 넣어준다. 말 그대로 문자열이 숫자로 변환
코딩 테스트를 공부하다가 배열의 중복값을 제거하기 위해 for문과 filter를 열심히 고민하고 고민해서 6-7줄 되는 코드를 만들었다... 만드는 와중에... 이거 맞나..? 라는 생각이 들어서 찾아본 결과, 단 1,2줄로 중복을 제거할 수 있는 방법을 찾았다.new
코딩테스트 연습을 하다가 배열의 n번째 인덱스부터 n번째 인덱스까지 자르는 것이 나왔고 머릿 속에 slice와 splice가 먼저 떠올랐는데... 차이를 명확하게 인지하지 못하고 사용하고 있는 것 같아서 정리하고자 한다.둘 중에 되는 걸로 하니... 거의 그냥 찍은 것
프로젝트를 하며 fetch만 써오던 날이 계속 이어져 왔는데, 어느 순간부터는 axios를 기본으로 사용하고 있다. fetch에 비해 axios가 더 좋다 라는 막연한 생각으로 써왔기 때문에 도대체 뭐가 더 좋은지 알아보기 위해서 정리하고자 한다.fetch는 ES6부터
우리가 크롬이나 IE에 들어와서 url 검색창에 url을 입력하면 거기에 맞는 웹사이트가 뜬다.검색을 하고 웹사이트가 뜨는 이 과정을 브라우저가 렌더링 하는 방식이라고 하며 이 과정에는 어떠한 순서가 있는지 알아보고자 한다.브라우저부터 알고 가보자. 브라우저는 쉽게 생
Node.js를 바탕으로 프로덕트를 제작해 왔지만, 정확하게 모르는 것 같아서 정리하고자 공부하였다.노드 공식 사이트에서는 Node.js를 다음과 같이 정의하고 있다.Node.js는 Chrome V8 JavaScript 엔진으로 빌드 된 JavaScript 런타임입니다
URL을 검색창에 입력하면 렌더링을 위해 서버로부터 HTML, CSS, Javascript 파일을 다운로드 받아 화면에 표출한다.렌더링을 하는 방식은 크게 2가지가 있다.SSR은 Server Side Rendering의 약자로, 말 그대로 서버에서 렌더링을 준비해서 클
컴퓨터에는 운영체제라는 것이 있다. 운영체제는 사용자가 컴퓨터를 사용하기 위해 필요한 소프트웨어인데, 컴퓨터를 사용하면서 실행하는 모든 프로그램들은 운영체제에서 관리하고 제어하고 있다.대표적인 운영체제는 IOS, WIDOWS 등이 있다.프로세스 : 운영체제로 자원(메모
컴퓨터 공학의 기초 지식으로 디자인 패턴이 있다고 한다.먼저, 디자인패턴이란 소프트웨어의 개발 방법을 형식화한 것을 말한다. 건축을 할 때는 어떠한 공법을 사용해서 진행하는 것과 같다. 같은 방식으로 개발을 하게 되면 문제가 발생했을 경우, 빠르게 대응할 수 있다. 같
HyperText Transfer Protocol의 약자이다. 인터넷 상에서 데이터를 주고 받을 수 있는 프로토콜이다.예..? 뭐라구요? 여기서 프로토콜은 데이터를 주고 받기 위한 규칙이라고 생각하면 쉽다.보통 우리는 https://www.google.com
자바스크립트는 기본적으로 동기 언어이다. 호출된 순서대로 코드가 실행된다. 하지만 데이터 호출과 같은 함수는 데이터의 양에 따라서 시간이 오래걸릴 수 있다. 그렇다면 동기 언어인 자바스크립트에서는 비교적 빠르게 실행될 수 있는 함수가 데이터를 호출하는 함수보다 뒤에 있
Callback Queue 자세히 알아보기. 먼저, Callback Queue는 자바스크립트 엔진의 동작원리에서 찾아볼 수 있는 개념이다. 이벤트 루프가 Callback Queue에 대기하고 있는 비동기로 처리할 것들을(setTimeout, Promise 등) Call
어디서 오셨나요? 로컬, 세션, 쿠키가 등장하게 된 배경은 늘 그렇듯이 기존의 방식의 큰 단점 때문이다. HTTP 프로토콜의 비연결성과 무상태라는 특징 때문에 로컬, 세션, 쿠키가 등장하게 되었다. > - 비연결성 : HTTP는 클라이언트가 요청을 서버에 보내면 서버가
side effect useEffect에 대해서 제대로 알기 위해선 side effect도 같이 아는 것이 좋다. React 컴포넌트가 화면에 렌더링이 되면 비동기로 처리되어야 하는 부수적인 효과를 side effect라고 한다. 일례로, 데이터를 호출하는 경우 먼저
memoization useMemo와 useCallback의 차이를 알기 위해선 먼저 memoization이란 프로그래밍 기법을 먼저 알아두는 것이 좋다. > memoization 이전의 연산 결과를 저장해두고 동일하게 또 연산이 필요하면 저장해둔 결과를 활용하는 프
여러 번 동일하게 호출되는 함수가 있다면, 마지막 혹은 처음 함수만 호출되게 의도적으로 만들어 주는 것 이다.debounce가 개인적으로 필요 했던 상황은 프로젝트를 진행하던 중이었다. react-icon을 사용해봤다면 이해가 쉬울 것이다. 검색을 하는데 따로 검색하는