깃허브 사이트에 먼저 가입을 한다. 그리고 터미널을(cmd 혹은 에디터의 내장기능사용(vscode)) 들어간다. 깃허브를 처음 사용한다면 아래 코드를 입력한다. git config --global user.email "내 이메일", git config --global user.name "내 이름" 사용법 1. cd 올릴폴더 2. git init (.git이라는 숨김폴더가 생성된다.) 3. git add .(커밋 대기중으로 바뀐다. .은 모든 파일을 선택하는 용어다.) 4. git commit -m "설명" (설명에 말 그대로 설명 예를들면 "header update" 이런식으로 적으면 된다.) 5. repository 만들기 ( 깃허브 사이트에서 repositiory를 만들면 된다.) 6. git rem..
문제 설명 수포자는 수학을 포기한 사람의 준말입니다. 수포자 삼인방은 모의고사에 수학 문제를 전부 찍으려 합니다. 수포자는 1번 문제부터 마지막 문제까지 다음과 같이 찍습니다. 1번 수포자가 찍는 방식: 1, 2, 3, 4, 5, 1, 2, 3, 4, 5, ... 2번 수포자가 찍는 방식: 2, 1, 2, 3, 2, 4, 2, 5, 2, 1, 2, 3, 2, 4, 2, 5, ... 3번 수포자가 찍는 방식: 3, 3, 1, 1, 2, 2, 4, 4, 5, 5, 3, 3, 1, 1, 2, 2, 4, 4, 5, 5, ... 1번 문제부터 마지막 문제까지의 정답이 순서대로 들은 배열 answers가 주어졌을 때, 가장 많은 문제를 맞힌 사람이 누구인지 배열에 담아 return 하도록 solution 함수를 작..
문제 설명 배열 array의 i번째 숫자부터 j번째 숫자까지 자르고 정렬했을 때, k번째에 있는 수를 구하려 합니다. 예를 들어 array가 [1, 5, 2, 6, 3, 7, 4], i = 2, j = 5, k = 3이라면 array의 2번째부터 5번째까지 자르면 [5, 2, 6, 3]입니다. 1에서 나온 배열을 정렬하면 [2, 3, 5, 6]입니다. 2에서 나온 배열의 3번째 숫자는 5입니다. 배열 array, [i, j, k]를 원소로 가진 2차원 배열 commands가 매개변수로 주어질 때, commands의 모든 원소에 대해 앞서 설명한 연산을 적용했을 때 나온 결과를 배열에 담아 return 하도록 solution 함수를 작성해주세요. 입출력 예 풀이 function solution(array,..
문제 설명 수많은 마라톤 선수들이 마라톤에 참여하였습니다. 단 한 명의 선수를 제외하고는 모든 선수가 마라톤을 완주하였습니다. 마라톤에 참여한 선수들의 이름이 담긴 배열 participant와 완주한 선수들의 이름이 담긴 배열 completion이 주어질 때, 완주하지 못한 선수의 이름을 return 하도록 solution 함수를 작성해주세요. 제한사항 마라톤 경기에 참여한 선수의 수는 1명 이상 100,000명 이하입니다. completion의 길이는 participant의 길이보다 1 작습니다. 참가자의 이름은 1개 이상 20개 이하의 알파벳 소문자로 이루어져 있습니다. 참가자 중에는 동명이인이 있을 수 있습니다. 입출력 예 풀이 function solution(participant, completi..
오늘은 저번시간에 이어서 콜백지옥 탈출하는 법을 살펴보겠습니다. 저번에는 기본 내장 모듈으로만 탈출했습니다. 오늘은 mysql2를 이용해서 async await를 사용하겠습니다. 아래는 최근(현시점) mysql과 mysql2의 다운로드 숫자입니다. mysql2도 mysql만큼이나 사용자가 많은 것을 알 수 있습니다. asyn await을 사용하지 않는다면 기본적인 문법은 mysql2도 mysql과 같습니다. 정말인가? 하시는 분들은 npm install mysql2 로 설치하시고 var mysql = require("mysql"); => var mysql = require("mysql2"); 해보시면 됩니다. 이제 async await를 사용해보겠습니다. async function main() { con..
callback 지옥이란 callback함수의 중첩 때문에 코드가 너무 복잡해지는 것을 말합니다. 아마 자바스크립트를 사용하시는 분들은 한번 쯤 겪었을 문제입니다. 오늘은 express mysql에서 콜백지옥을 탈출하는 법을 쓸려고 합니다. 저번 글에서 promise와 async await를 다루었습니다. 오늘은 조금 더 응용해서 nodejs express mysql에서 promise, asyn await를 사용하는 방법을 알아보겠습니다. (nodejs express, mysql, promise, asyn await 중 하나라도 모르시는 것이 있으면 코드를 이해하기 힘들 수 있습니다.) 일단 mysql이외의 특별한 모듈은 사용하지 않겠습니다. (이 글은 promise, async await 입문자들을 위..
promise에 이어서 async await 사용법을 살펴보겠습니다. promise에 대해 모르신다면 https://ms3864.tistory.com/22 를 보고 오는것을 추천합니다. promise 사용법 오늘은 자바스크립트를 사용한다면 꼭 알아야만 하는 promise에 대해 알아보겠습니다. Promise는 프로미스가 생성될 때 꼭 알 수 있지는 않은 값을 위한 대리자로, 비동기 연산이 종료된 이후의 결�� ms3864.tistory.com async function 선언은 AsyncFunction객체를 반환하는 하나의 비동기 함수를 정의합니다. 비동기 함수는 이벤트 루프를 통해 비동기적으로 작동하는 함수로, 암시적으로 Promise를 사용하여 결과를 반환합니다. 그러나 비동기 함수를 사용하는 코드의 ..
mysql에서 테이블을 연결시키는데 필요한 것이 join입니다. join에도 여러가지 방법이 있는데 예제와 함께 살펴보겠습니다. 처음 보시는 분이라도 제 이전글과 이 글만 보시면 join을 사용할 수 있습니다. 먼저 데이터베이스와 테이블을 생성하겠습니다. 코드를 복사 읽고 복사 붙여넣기 하시면 됩니다. CREATE DATABASE ex; USE ex CREATE TABLE category( id INT NOT NULL auto_increment, name VARCHAR(30) NOT NULL , PRIMARY KEY(id) ); CREATE TABLE post( id INT NOT NULL auto_increment, title VARCHAR(30) NOT NULL, category_id INT NOT ..

