사실 저번 달 얘기지만 프로그래머스 코딩테스트 입문 100문제를 모두 풀어 머쓱이를 받았다. 99문제까지 풀었을 때 솔로 프로젝트에 들어가는 바람에 2주나 지나서 마지막 남은 한 문제를 풀 수 있었다. 문제 100개 푸는게 생각보다 오래 걸리는 작업이었지만 목표를 이루니 좋다. 앞으로도 화이팅.
과제 개요 UI 컴포넌트 만들기 구현 과제 모달 창 만들기 토글 만들기 탭 만들기 태그 만들기 결과물 고민했던 부분과 해결 방법 1. 모달 - 배경에 클릭이벤트 적용 시 모달 창에도 클릭이벤트가 적용되는 문제 {/* TODO : 조건부 렌더링을 활용해서 Modal이 열린 상태(isOpen이 true인 상태)일 때만 모달창과 배경이 뜰 수 있게 구현해야 합니다. */} {isOpen === true ? { openModalHandler() }}> { e.stopPropagation() }}> Hello : null} 모달을 연 후 다시 끌 때에는 배경을 눌러야 모달이 닫히도록 코드를 짰는데 버블링으로 인해 주변 요소까지 클릭 이벤트가 적용되는데, stopPropagation() 함수를 통해 버블링을 막을..
react에서 배열 자료를 다룰 때에는 copy본을 만드는게 좋다. 처음 배울 때에는 원본 배열을 남겨놓는게 좋으니 그러는가보다 하며 넘겼는데, 방금 겪어보니 이유를 알겠다. 아래가 내가 해결해야 했던 문제다. react에서는 state함수를 사용하여 변수를 다루는데, 아래처럼 const [tags, setTags]=useState(어쩌구) 일 때, setTags()를 이용해야 tags를 변경할 수 있다. //tags 배열 const [tags, setTags] = useState(['a', 'b']); //indexToRemove로 삭제할 인덱스 받음 const removeTags = (indexToRemove) => { //태그를 삭제하는 메소드 작성 }; 그런데 문제는 setTags()를 이용해 배..
과제 개요 라이브러리 사용하지 않고 순수 node.js로 서버 만들기! 목표는 입력한 문자를 누르는 버튼에 따라 대문자 또는 소문자로 반환해주는 서버를 완성하는 것이다. client부분은 이미 완성되어있고, server부분의 나머지를 완성해야 한다. POST에 문자열을 담아 요청을 보낼 때는 HTTP 메시지의 body(payload)를 이용합니다. 서버는 요청에 따른 적절한 응답을 클라이언트로 보내야 합니다. CORS 관련 헤더를 OPTIONS 응답에 적용해야 합니다. 클라이언트의 preflight request에 대한 응답을 돌려줘야 합니다. preflight request에 대한 응답 헤더는 이미 작성되어 있습니다. 과제를 완성하기 위해서는 node.js로 서버 만드는 법을 알아야 하는데, 이를 위해..
스스로의 못남이 웃겨서 적는다. 그리고 앞으로는 조금 더 발전된 사고를 하기 위해 적는다. 프로그래머스 알고리즘 문제 중에, 연속된 세 개의 정수를 더해 12가 되는 경우는 3, 4, 5입니다. 두 정수 num과 total이 주어집니다. 연속된 수 num개를 더한 값이 total이 될 때, 정수 배열을 오름차순으로 담아 return하도록 solution함수를 완성해보세요. 라는 문제가 있었다. 아래 예시처럼 결과가 나오면 된다. num total result 3 12 [3, 4, 5] 5 15 [1, 2, 3, 4, 5] 4 14 [2, 3, 4, 5] 5 5 [-1, 0, 1, 2, 3] 이것은 내가 처음에 푼 방식이다. function solution(num, total) { //-1000부터 100..