Array.prototype.map() map 메서드는 자신을 호출한 배열의 모든 요소를 순회하면서 인수로 전달받은 콜백 함수를 반복 호출한다. 그리고 콜백 함수의 반환값들로 구성된 새로운 배열을 반환한다. 이때 원본 배열은 변경되지 않는다. map(callbackFn) map(callbackFn, thisArg) 매개 변수 callbackFn : 배열의 각 요소에 대해 실행할 함수. 반환 값은 새 배열의 단일 요소로 추가. 이 함수는 다음 매개 변수들을 호출한다. element : 배열에서 처리 중인 현재 요소 index : 배열에서 처리 중인 현재 요소의 인덱스 array : 호출된 map() 배열 thisArg(Optional) : 콜백 함수에서 this를 실행할 때 사용할 값. 반환값 각 요소가 ..
Array.prototype.reduce() 자바스크립트의 reduce 메서드는 자신을 호출한 배열을 모든 요소를 순회하며 인수로 전달받은 콜백 함수를 반복 호출한다. 그리고 콜백 함수의 반환값을 다음 순회 시에 콜백 함수의 첫 번째 인수로 전달하면서 콜백 함수를 호출하여 하나의 결과값을 만들어 반환한다. 이떄 원본 배열은 변경되지 않는다. reduce 메서드는 첫 번째 인수로 콜백 함수, 두 번째 인수로 초기값을 전달받는다. reduce 메서드의 콜백 함수에는 4개의 인수, 초기값 또는 콜백 함수의 이전 반환값, reduce 메서드를 호출한 배열의 요소값과 인덱스, reduce 메서드를 호출한 배열 자체 즉 this가 전달된다. reduce(callbackFn) reduce(callbackFn, ini..
등차수열의 항만 더하기 🔸 문제 설명 두 정수 a, d와 길이가 n인 boolean 배열 included가 주어집니다. 첫째항이 a, 공차가 d인 등차수열에서 included[i]가 i + 1항을 의미할 때, 이 등차수열의 1항부터 n항까지 included가 true인 항들만 더한 값을 return 하는 solution 함수를 작성해 주세요. 🔸 제한사항 1 ≤ a ≤ 100 1 ≤ d ≤ 100 1 ≤ included의 길이 ≤ 100 included에는 true가 적어도 하나 존재합니다. 🔸 입출력 예 a d included result 3 4 [true, false, false, true, true] 37 7 1 [false, false, false, true, false, false, false]..
프로그래머스 코테 연습 자바스크립트 Lv.0을 처음 시작하자마자 접하게 된 readline 모듈. 분명 기초 강의에 언급조차 된 적 없으니 당황할 수 밖에 없는 이 기본적인 모듈에 대해 이해하기 위해 정리한다. 공식문서와 다른 분들의 블로그 내용 참고함. readline readline 모듈은 Readable stream(such as `process.stdin`)에서 한 번 에 한 줄씩 데이터를 읽기 위한 인터페이스를 제공한다. (Node.js 의 정의이지만 어려우니 패스...) 사용법 1. 모듈 불러오기 require() 함수를 통해 readline 모듈을 불러온다. const readline = require('readline') 2. 인터페이스 객체 만들기 interface 객체를 이용해 콘솔에서..
코드 처리하기 🔸 문제 설명 문자열 `code`가 주어집니다. `code`를 앞에서부터 읽으면서 만약 문자가 "1"이면 `mode`를 바꿉니다. `mode`에 따라 `code`를 읽어가면서 문자열 `ret`을 만들어냅니다. `mode`는 0과 1이 있으며, `idx`를 0 부터 `code의 길이 - 1` 까지 1씩 키워나가면서 `code[idx]`의 값에 따라 다음과 같이 행동합니다. - `mode`가 0일 때 - `code[idx]`가 "1"이 아니면 `idx`가 짝수일 때만 `ret`의 맨 뒤에 `code[idx]`를 추가합니다. - `code[idx]`가 "1"이면 `mode`를 0에서 1로 바꿉니다. - `mode`가 1일 때 - `code[idx]`가 "1"이 아니면 `idx`가 홀수일 때만 `..
앞으로 TIL를 꾸준히 기록하면서 이를 시작으로 개발자가 되기 위한 과정을 공유해보려 한다. 어렸을 땐 실패가 두려워서 아웃풋이 명확하지 않은 상황에서 과정을 오픈하는 것에 대한 두려움이 있었지만, 어느 정도 나이가 드니 그게 정말 하나도 중요한 것이 아니었다는 걸 안다. 지금이라고 해서 그 두려움이 없진 않지만 결과에 너무 연연하지 않고 꾸준히 노력해 나가는 과정이 훨씬 중요하니까, 차근차근 조바심 내지 않고 해보자. 오늘의 TIL은 UTIL 이다. Until Today I Learned. 아직 얼마 안되긴 했지만 회사를 마무리하며 짬내어 공부해 온 개발 프론트엔드 입문용 공부 코스를 순서대로 공유해본다. 0. 드림코딩 일단 공부에 앞서서 비전공자 개발자 전향, 개발자 공부, 커리어 플래닝 관련 컨텐츠..