전체 글 97

JS) 배열 회전시키기

🔗 링크https://school.programmers.co.kr/learn/courses/30/lessons/120844📄 문제정수가 담긴 배열 numbers와 문자열 direction가 매개변수로 주어집니다. 배열 numbers의 원소를 direction방향으로 한 칸씩 회전시킨 배열을 return하도록 solution 함수를 완성해주세요.🔎 어떻게 풀까1. right일 경우 맨 앞에 numbers의 맨 마지막 인덱스의 원소를 넣어줌 (push로 넣어줄거라 left일 경우 맨 첫 인덱스의 원소를 미리 넣으면 안됨)2. right인 경우엔 numbers를 그대로 push해주고 left인 경우엔 인덱스에 +1 해서 push3. left인 경우 맨 뒤에 numbers의 맨 첫번째 원소를 넣어줌💡 뭘..

알고리즘 2025.02.20

JS) 삼각형의 완성조건 (1)

🔗 링크https://school.programmers.co.kr/learn/courses/30/lessons/120889#📄 문제선분 세 개로 삼각형을 만들기 위해서는 다음과 같은 조건을 만족해야 합니다. 가장 긴 변의 길이는 다른 두 변의 길이의 합보다 작아야 합니다. 삼각형의 세 변의 길이가 담긴 배열 sides이 매개변수로 주어집니다. 세 변으로 삼각형을 만들 수 있다면 1, 만들 수 없다면 2를 return하도록 solution 함수를 완성해주세요.🔎 어떻게 풀까1. 제일 큰 수를 변수에 담고2. 그 변수를 제외한 배열을 만듦3. 만든 배열의 [0]번째 원소와 [1]번째 원소를 더한 후4. 변수와 비교하는 조건문을 작성(수정)1.  sides를 내림(오름차순)으로 정렬2. 정렬한 배열의 [..

알고리즘 2025.02.07

JS) 짝수는 싫어요

🔗 링크https://school.programmers.co.kr/learn/courses/30/lessons/120813📄 문제정수 n이 매개변수로 주어질 때, n 이하의 홀수가 오름차순으로 담긴 배열을 return하도록 solution 함수를 완성해주세요.🔎 어떻게 풀까홀수를 찾아서 찾은 홀수를 빈 배열 anwser에 넣기홀수만 담긴 answer를 오름차순으로 정렬💡 뭘 써야 할까0이 될 때 까지 반복 => for문 (let i=n; i>0; i--) 홀수 찾기 => i%2 === 1 찾은 홀수 배열에 넣기 => answer.push(i)오름차순으로 정렬 => answer.sort((a,b)=>a-b)🚀 답function solution(n) { var answer = []; fo..

알고리즘 2025.01.08

JS) 최빈값 구하기

🔗 링크https://school.programmers.co.kr/learn/courses/30/lessons/120812?language=javascript📄 문제최빈값은 주어진 값 중에서 가장 자주 나오는 값을 의미합니다. 정수 배열 array가 매개변수로 주어질 때, 최빈값을 return 하도록 solution 함수를 완성해보세요. 최빈값이 여러 개면 -1을 return 합니다.🔎 어떻게 풀까// 각 배열의 원소 갯수를 세어서 객체로 만들어줌ex)[1,2,3,3,3,4]인 경우obj = { 1 : 1, 2 : 1, 3 : 3 , 4 : 1}// 값들을 모두 비교해 가장 큰 값의 키를 구함// 키가 1개면 해당 키를 출력, 아니라면 (2개 이상이라면) -1를 출력💡 뭘 써야 할까1. array..

알고리즘 2025.01.07

241016

가취뽀 - 프로필이미지 수정문제발생회원정보를 수정할 때 다른 정보는 회원가입시 사용했던 것으로 어떻게 만들어놨는데 프로필 이미지 변경이 안된다 원인추론스토리지에 이미지가 들어가지 않는 것으로 보아 로직 자체에 문제가 있는 것 같다로직에 문제가 없다고 해도 (정상적으로 이미지가 선택된다고 해도) 회원가입때 사용했던 것을 그대로 사용하면 한사람이 프로필 이미지를 계속 바꾸면 이미지도 계속 쌓이게 되므로 수정은 필연적이었다. 해결방안1. 회원가입할 때 이미지를 넣어줄 경로에 있는 기존 이미지를 삭제하고 새로 넣어주는 방법더보기1. 사용자가 이미지를 선택했을 경우 2. user_image / user_id 경로의 모든 이미지를 삭제한 후 3. 선택한 이미지를 user_image / user_id 경로에 넣고 4..

TIL 2024.10.16

241013

가취뽀 - 회원가입/로그인페이지에 이미 로그인한 사용자가 접근하는 것을 막기문제발생import { useRouter } from 'next/router';const { isLoggedIn } = useAuthStore(); const router = useRouter(); // 이미 로그인한 사용자인지 구분해서 접근막기 useEffect(() => { if (isLoggedIn) { router.replace('/'); } }, [isLoggedIn, router]);오류: NextRouter가 마운트되지 않았습니다. https://nextjs.org/docs/messages/next-router-not-mounted 원인추론https://nextjs.org/docs/messa..

TIL 2024.10.13

241012

가취뽀 - 로그인문제발생로그인 시, 정확한 정보를 입력해도 Invalid login credentials(잘못된 로그인 자격증명)이라고 뜨는 문제 원인추론제출 폼 함수의 const { data, error } = await supabase.auth.signInWithPassword({ email: formData.user_id, password: formData.user_pw }); 이 부분이 문제가 되는게 아닐까 했다. 이건 supabase에서 제공하는 이메일로 로그인 할 때 사용되는 로직인데, 나는 사용자의 id(uid가 아닌 가입시 사용자가 직접 입력하는 id)로 로그인하도록 하고 싶어서 email: user_id로 하면 알아서 아이디로 로그인 되지 않을까? 했다. 해결방안에..

TIL 2024.10.12

241011

가취뽀 - 회원가입문제발생유효성 검사결과가 화면에 뜨지않고 통과하지 못해도 폼이 제출되는 등 아직 문제는 많긴하지만 회원가입 버튼을 눌렀을 때 supabase에 가입 정보가 등록되는데,supabase에서 제공해주는 Authentication(암호화가능한?유저테이블)에는 가입데이터가 다 쌓이는거 같은데 (제공되는 컬럼이랑 내가 저장해야하는 데이터랑 일치하지 않는 부분이 많아 전부 확인은 못했지만..) 내가 만든 auth테이블에는 안쌓임!! uuid랑 이메일이 들어오는데 이메일은 또 user_id에 쌓임 ㅠㅠㅠㅠ 원인추론403은 권한 문제가 있을 때 발생한다고 함..vs상에서 error를 넣어 콘솔로 확인할 수 있는 모든? 곳을 찍어봤는데도 내가 찍은 console은 찍히지 않고 그냥 403에러가 뜬다는 점..

TIL 2024.10.12