(22.02.06) Intellij - Javascript heap out of memory 오류 포스팅 썸네일 이미지

TIL

(22.02.06) Intellij - Javascript heap out of memory 오류

작은 지식이라도, 하루에 하나씩. 한 줄 요약 🦄힙 메모리 : 사용자가 동적으로 할당하고 해제하는, 직접 관리할 수 있는 영역🦄 🦄Intellij 같은 IDE는 VScode와는 다르게 프로젝트마다 사용할 수 있는 힙 메모리를 제약하는데, 프로젝트의 메모리 크기가 설정된 힙 메모리보다 커지면 터지는 오류이다. (여기서 "vscode는 IDE 처럼 쓸 수 있는 텍스트 에디터이다." 라는 말이 조금 다가왔다.) 🦄 들어가는 말 항상 vscode 만을 쓰는 나였지만, 팀장님께서 intellij가 좋다며 전환을 강력히 주장하시는 바람에 얼떨결에 intellij로 넘어오게 되었다. 인텔리제이는 그냥 java 전용 IDE 인줄 알았는데 왠걸, 자스 기반 프로젝트도 커버해주고, flutter 프로젝트도 관리해주는 짱짱..

2022.02.06 게시됨

(21.09.28) linter와 prettier 설정을 무시하는 방법 포스팅 썸네일 이미지

TIL

(21.09.28) linter와 prettier 설정을 무시하는 방법

작은 지식이라도, 하루에 하나씩. 한 줄 요약 🦄//eslint-disable-next-line : 아랫줄의 eslint 상충을 무시한다.🦄 🦄//prettier-ignore : 아랫줄의 prettier 상충을 무시한다.🦄 본문 eslint, prettier는 느슨한 자바스크립트를 위한 지원도구입니다. eslint는 정적 분석을 하여 런타임 이전에 코딩 컨벤션에 위배되는 코드나 안티패턴을 감지해주고, prettier는 미리 설정된 형식외의 코드를 다시 작성해주는 코드 포맷터입니다. 순수히 개발의 편의를 위해 사용되는 이 도구들은, 프로젝트 규모가 커질 수록 그 빛을 발합니다. 이 도구들 덕분에 복잡한 코드들을 더욱 가독성 높게, 생산성 높게 만들어주죠. 그러나, 때로는 정말 linter와 prettier..

2021.09.28 게시됨

(21.09.05) Promise에 관하여 포스팅 썸네일 이미지

TIL

(21.09.05) Promise에 관하여

작은 지식이라도, 하루에 하나씩. 한 줄 요약 🦄Promise란 자바스크립트 비동기 작업을 더 편하게 처리할 수 있도록 ES6에 도입된 기능🦄 🦄굳이 서버로 API 요청을 보내는 작업이 아니더라도 사용 할 수 있음🦄 🦄호출 시 콜백함수를 선언. 성공시 : resolve / 실패 시 : reject 실행🦄 🦄Promise의 상태는 Pending(유예중), Fulfilled(이행중), Rejected(거부중)의 3가지 상태를 가진다.🦄 본문 앞서 말했듯, Promise란 자바스크립트의 비동기 작업을 더 편하게 처리하기 위한 기능이다. * 비동기 작업 : 실행 요청과 실행 결과가 동시에 일어나지 않는 작업 (동시에 일어나지 않는 작업으로 생각) 호랑이 담배피던 시절에는 비동기 작업을 처리하기 위해서 콜백 함수..

2021.09.06 게시됨

(21.09.05) ParseInt vs Number 포스팅 썸네일 이미지

TIL

(21.09.05) ParseInt vs Number

작은 지식이라도, 하루에 하나씩. 한 줄 요약 🦄둘 다 arguments를 Number 타입으로 바꿔주는 함수🦄 🦄 parseInt는 string 타입만을 받아, Number 타입으로 바꿀 수 있는 부분만을 반환한다🦄 🦄Number 함수는 argument의 타입에 신경쓰지 않지만, Number로 변환할 수 없다면 NaN을 반환한다🦄 본문 나는 문자를 숫자로 바꿔야할 때 parseInt만을 써왔다. 뭐 딱히 이유라고 할만한건 없고, 그냥 그거밖에 몰랐기 때문이다. 정확히 말하자면, Number의 존재는 알고 있었는데 굳이?? 라는 생각이였기에, Number의 존재는 내 기억 속에서 잊혀져 갔다. 근데 이번에도 "모든 상황에 들어맞는 황금열쇠는 없다" 라는 말이 적중했다. 회사에서 어떤 요청의 응답을 숫자로..

2021.09.05 게시됨

(21.08.31)ES6 Class 포스팅 썸네일 이미지

TIL

(21.08.31)ES6 Class

작은 지식이라도, 하루에 하나씩. 한 줄 요약 🦄Javascript에서 class는 java와 같은 객체 지향 프로그래밍 언어에서 사용하는 것과 유사하게 class를 사용할 수 있게 하는 문법적 설탕으로, 기존의 prototype 문법을 대체해준다🦄 본문 사실 나는 class 문법이 굉장히 낯설다. Python을 배울 때도 클래스 부분은 "뭐 그냥 이런게 있다~"로만 알고 있었고, React는 함수 컴포넌트로 배웠기에 class를 이용할 일은 더더욱 없었다. 와리가리 야매로 달리던 댓가를 치뤘다. 회사 코드가 전부 class로 되어있었기 때문이다. 대충 lifeCycle 부분만 다르겠지~ 라는 안일한 생각을 가지고 있었는데, 기본이 없으니까 상당히 골을 썩혔다. 오늘 클래스 컴포넌트 내부에서 사용할 변수..

2021.08.31 게시됨

Javascript에서 ['10','10','10'].map(parseInt) 가 [1,NaN,3]인 이유 포스팅 썸네일 이미지

웹/일반

Javascript에서 ['10','10','10'].map(parseInt) 가 [1,NaN,3]인 이유

TL;DR 🦄자바스크립트가 너무 관대해서 벌어진 일이다.🦄 🦄매개변수를 받는 함수에 아무런 값도 넣어주지 않으면, JS는 자동으로 매개변수를 넣어준다🦄 본문 map이 뭐하는 함수인지도, parseInt가 뭐하는 함수인지도 다 알고 있겠지만, 그래도 다시 한번 하나 씩 살펴봅시다. map은 배열 내의 모든 요소에 대하여 주어진 함수를 호출한 후, 그 결과를 모아 새로운 배열을 만드는 메서드이다 parseInt는 문자열 인자를 숫자로 반환하는 함수이다. 이 정도야 기본 중의 기본이지만, 그럼 혹시 map의 3번째 매개변수는 무엇인지 아는가?? 아니면 parseInt의 2번째 매개변수에 대해서는 아시나요?? 잘 몰라도 괜찮다. 애초에 이 수수께끼가 그것들 때문에 생긴건 아니니까요 그래도 한번 공식 문서를 보고..

2021.08.18 게시됨

(21.08.02) setInterval 함수 포스팅 썸네일 이미지

TIL

(21.08.02) setInterval 함수

작은 지식이라도, 하루에 하나씩. 한 줄 요약 🦄setInterval 함수는 일정한 시간 간격으로 작업을 수행하는데 사용한다.🦄 setInterval 함수 https://developer.mozilla.org/en-US/docs/Web/API/WindowOrWorkerGlobalScope/setInterval WindowOrWorkerGlobalScope.setInterval() - Web APIs | MDN The setInterval() method, offered on the Window and Worker interfaces, repeatedly calls a function or executes a code snippet, with a fixed time delay between each cal..

2021.08.02 게시됨