분류 전체보기

728x90
반응형
프로그래머스/Level2(JS)

[프로그래머스] N개의 최소공배수 - JS

N개의 최소공배수 ❓ 문제설명 두 수의 최소공배수(Least Common Multiple)란 입력된 두 수의 배수 중 공통이 되는 가장 작은 숫자를 의미합니다. 예를 들어 2와 7의 최소공배수는 14가 됩니다. 정의를 확장해서, n개의 수의 최소공배수는 n 개의 수들의 배수 중 공통이 되는 가장 작은 숫자가 됩니다. n개의 숫자를 담은 배열 arr이 입력되었을 때 이 수들의 최소공배수를 반환하는 함수, solution을 완성해 주세요. 🚫 제한조건 arr은 길이 1이상, 15이하인 배열입니다. arr의 원소는 100 이하인 자연수입니다. ✔ 입출력 예 arr result [2,6,8,14] 168 [1,2,3] 6 💡 풀이 function solution(arr) { // 내 풀이 // 소인수 분해하여 ..

사소한 개발지식/JavaScript

Prettier - .prettierrc 설정하기

Prettier .prettierrc 설정하기 🔎 .prettierrc 란 Prettier 설정파일로 프로젝트 상단에 .prettierrc 의 옵션값을 확인하여 코드 포맷팅을 진행한다. 🔎 printWidth 기본값은 80으로 코드 한줄의 갯수를 설정한다. 🔎 tabWidth 기본값은 2로 들여쓰기(tab) 의 너비수를 설정한다. 🔎 useTabs 기본값은 false 로 탭을 사용할 지 스페이스바로 간격을 조정할 지 설정한다. 🔎 semi 기본값은 true 로 코드 마지막에 ;(세미콜론)을 붙일지 설정한다. 🔎 singleQuote 기본값은 false 로 큰따옴표 대신 작은따옴표를 사용할 지를 설정한다. 🔎 quoteProps 기본값은 'as-needed' 로 개체의 속성이 인용될 때 변경한다. as-n..

사소한 개발지식/JavaScript

ESLint - .eslintrc 설정하기

ESLint .eslintrc 설정하기 🔎 .eslintrc 란 ESLint 설정파일로 JSON, YAML, JavaScript 형식을 지원한다. 항상 이름은 .eslintrc 이어야하고 각 파일 형식에 맞춰 확장자를 사용하면 된다. (ex. .eslintrc.json) 🔎 root Monorepo 와 같이 하나의 repository 에서 여러개의 프로젝트를 관리하는 경우 여러개의 설정파일을 같이 사용할 수 있는데 이럴 때 유용한 옵션이 root 옵션이다. 해당 프로젝트에 .eslintrc 가 없다면 그 상위 폴더를 거슬러 올라가면서 root 가 true 로 설정된 .eslintrc 를 탐색하고 있다면 해당 설정파일로 ESLint 를 적용한다. 🔎 plugins ESLint 에서 기본적으로 제공하는 규칙..

사소한 개발지식/JavaScript

Webpack - webpack.conifg.js 설정하기

Webpack webpack.conifg.js 설정하기 🔎 webpack.conifg.js란 webpack 4버전 이후로는 따로 설정파일이 없더라도 webpack 이 src.index.js 파일을 dist/main.js 로 번들링 해주기 때문에 설정파일이 필수라고는 할 수 없다. 하지만 모든 프로젝트가 동일한 설정으로 번들링 된다는 것은 불가능하기 때문에 각 프로젝트에 맞는 설정값을 셋팅하는 것이 좋다. 이럴 때 webpack.config.js 파일에 설정값을 셋팅하면 webpack 은 해당 파일을 자동으로 읽고 설정에 맞게 번들링 해준다. 🔎 Entry webpack 이 어떤 파일을 기준으로 번들링 할 지 그 시작점을 나타낸다. 기본값은 아래와 같이 src/index.js 이다. module.expor..

사소한 개발지식/JavaScript

TypeScript - tsconfig.json 설정하기 (setting)

TypeScript tsconfig.json 설정하기 🔎 tsconfig.json 란 tsconfig.json 란 타입스크립트(ts) 파일을 자바스크립트(js) 파일로 변환하는 컴파일 설정 정의해놓은 파일이다. tsc --init 해당 명령어를 통해 tsconfig.json 파일을 자동으로 생성할 수도 있고 직접 tsconfig.json 파일을 만들어도 동일하게 동작한다. 위 명령어로 tsconfig.json 을 생성하면 모든 속성들이 나열되어 있고 주석으로 설명도 적혀있다.(영어) 이 후부터는 자주 사용되는 속성들에 대해 알아보자. 🔎 files 프로젝트에서 타입스크립트를 컴파일할 파일들의 목록들을 나타낸다. 이 아래에 include 와 exclude 속성이 나오는데 files 는 이 2개 속성보다 우..

사소한 개발지식/JavaScript

Node.js - package.json 설정하기(setting)

Node.js package.json 설정하기 🔎 package.json 란 package.json 란 npm(또는 yarn, pnpm) 으로 관리되는 node.js 기반의 프로젝으에 대한 상세 이자 해당 프로젝트에서 관리하는 module 의 의존성에 대한 상세를 모아놓은 파일이다. 즉, 해당 프로젝트에 대한 전반적인 상세를 기술해 놓은 파일이라 할 수 있다. package.json 은 파일명에서도 알 수 있지만 json 형식의 파일이고 필수적인 항목으로 name, version 이 있으며, 그 외에도 다양한 항목이 있다. 이 후부터는 package.json 의 여러 항목에 대해 알아보도록 하자. 🔎 name name 이란 단어에서 알 수 있듯이 프로젝트의 고유한 이름을 나타낸다. 위에서 언급한 내용처럼..

사소한 개발지식/React

React - CRA 없이 React 환경 설정 #2 (ESLint + Prettier)

React React - CRA 없이 React 환경 설정 🔎 ESLint 설치 ESLint 란 ES(EcmaScript - 표준 JavaScript) 와 Lint의 합성어로 JavaScript 코드에 에러가 있는 부분에 표시를 달아주는 모듈을 말한다. 기본적인 문법 뿐만 아니라 코딩 스타일도 설정 가능하기 때문에 협업에 매우 유용하다. npm install -D eslint eslint 모듈을 설치한 후 .eslintrc.json (eslint 설정파일)을 만들어야하는데 npx 명령어를 통해 설치도 가능하고 직접 파일을 생성해도 된다. 이번에는 npx 명령어를 통해 생성해보았다. npx eslint --init You can also run this command directly using 'npm i..

사소한 개발지식/React

React - CRA 없이 React 환경 설정 #1 (React+TypeScript+Babel+Webpack)

React React - CRA 없이 React 환경 설정 🔎 npm init 우선 프로젝트를 진행할 폴더를 생성한 후 터미널에서 npm init 명령어를 통해 package.json 을 생성한다. npm init -y // package.json { "name": "demo-project", "version": "1.0.0", "description": "", "main": "index.js", "scripts": { "test": "echo \"Error: no test specified\" && exit 1" }, "keywords": [], "author": "", "license": "ISC", // 따로 추가한 부분 "type": "module" // module 사용하는 방식 "module"..

프로그래머스/Level2(JS)

[프로그래머스] 점프와 순간 이동 - JS

점프와 순간 이동 ❓ 문제설명 OO 연구소는 한 번에 K 칸을 앞으로 점프하거나, (현재까지 온 거리) x 2 에 해당하는 위치로 순간이동을 할 수 있는 특수한 기능을 가진 아이언 슈트를 개발하여 판매하고 있습니다. 이 아이언 슈트는 건전지로 작동되는데, 순간이동을 하면 건전지 사용량이 줄지 않지만, 앞으로 K 칸을 점프하면 K 만큼의 건전지 사용량이 듭니다. 그러므로 아이언 슈트를 착용하고 이동할 때는 순간 이동을 하는 것이 더 효율적입니다. 아이언 슈트 구매자는 아이언 슈트를 착용하고 거리가 N 만큼 떨어져 있는 장소로 가려고 합니다. 단, 건전지 사용량을 줄이기 위해 점프로 이동하는 것은 최소로 하려고 합니다. 아이언 슈트 구매자가 이동하려는 거리 N이 주어졌을 때, 사용해야 하는 건전지 사용량의 ..

프로그래머스/Level2(JS)

[프로그래머스] 예상 대진표 - JS

예상 대진표 ❓ 문제설명 △△ 게임대회가 개최되었습니다. 이 대회는 N명이 참가하고, 토너먼트 형식으로 진행됩니다. N명의 참가자는 각각 1부터 N번을 차례대로 배정받습니다. 그리고, 1번↔2번, 3번↔4번, ... , N-1번↔N번의 참가자끼리 게임을 진행합니다. 각 게임에서 이긴 사람은 다음 라운드에 진출할 수 있습니다. 이때, 다음 라운드에 진출할 참가자의 번호는 다시 1번부터 N/2번을 차례대로 배정받습니다. 만약 1번↔2번 끼리 겨루는 게임에서 2번이 승리했다면 다음 라운드에서 1번을 부여받고, 3번↔4번에서 겨루는 게임에서 3번이 승리했다면 다음 라운드에서 2번을 부여받게 됩니다. 게임은 최종 한 명이 남을 때까지 진행됩니다. 이때, 처음 라운드에서 A번을 가진 참가자는 경쟁자로 생각하는 B번..

728x90
반응형
KimBY
'분류 전체보기' 카테고리의 글 목록 (3 Page)