목록전체 글 (97)
꾸준히 합시다
https://school.programmers.co.kr/learn/courses/30/lessons/135808 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr # Solution 1 function solution(k, m, score) { let answer = 0; const sorted = score.sort((a, b) => b - a); sorted.forEach((el, idx) => { if (idx % m === 0 && score[idx + m - 1]) { answer += score[idx + m - 1] * m; } }); ret..
4.1 변수란 무엇인가? 왜 필요한가? 메모리 주소를 통해 값에 직접 접근하는 것은 치명적 오류를 발생시킬 가능성이 높음. (예: 운영체제가 사용하고 있는 값을 실수로 변경하는 경우) 그렇기에 자바스크립트에서는 개발자의 직접적인 메모리 제어를 허용하지 않는다. 변수: 하나의 값을 저장하기 위해 확보한 메모리 공간 자체 또는 그 메모리 공간을 식별하기 위해 붙인 이름. 변수를 통한다면 개발자가 직접 메모리 주소를 통해 값을 저장하고 참조할 필요가 없이 안전하게 값에 접근 가능. 할당(assignment, 대입, 저장): 변수에 값을 저장하는 것. 참조(reference): 변수에 저장된 값을 읽어 들이는 것. 4.2 식별자 식별자(identifier): 어떤 값을 구별해서 식별할 수 있는 고유한 이름. 자..
nav 버튼을 클릭하면 해당 페이지로 이동하는 기능을 navigate를 사용해서 구현하려 했다. 그때 오류가 발생했고 읽어보니 구성 요소의 컴포넌트 밖에서 useNavigate()를 사용할 수 없다는 경고 메시지였다. 처음에는 당황했지만 알고 보니 단순한 에러였다. Header 컴포넌트 내에서 navigate를 사용했는데 Header 컴포넌트가 태그 밖에 존재하는 것이 문제가 되었다. // 수정 전 App.tsx // ...코드 생략 return ( ) // ... 코드 생략 아래 코드와 같이 Header 컴포넌트를 안으로 옮겨주니 바로 해결되었다. // 수정 후 App.tsx // ...코드 생략 return ( ) // ... 코드 생략
프론트에서 상품 결제를 요청할 때 해당 상품의 현재 상태를 조회하기 위해 아래와 같은 코드를 작성했다. let itemList = await Item.findAll({ where: { itemName: itemNames }, attributes: ['id', 'itemName', 'stock', 'sold', 'status'] }); itemNames는 결제를 원하는 상품의 이름만 담긴 배열인데, 프론트에서 보낸 전체 상품 정보 객체 배열에서 각 상품의 이름만 따로 저장한 것이다. (예: ['토스터기', '무선 게이밍 마우스']) 해당 상품만 조회하는 것까지는 문제 없었지만, 결괏값이 itemNames의 index 순이 아니라 DB에 저장된 해당 상품의 id 순으로 정렬이 되어 나온 것이 문제였다. 만약..