AI 도서관 · ChatGPT · 단축 명령어 · 코딩

코드 리뷰 받기 (심각도 순)

'괜찮아 보여요' 대신 우선순위가 붙은 지적을 받으세요

내용

아래 코드를 리뷰해줘.

{{INPUT}}

형식:
🔴 치명적 — 버그·보안 문제 (재현 조건까지)
🟡 개선 — 동작은 하지만 고치면 좋을 것
🟢 취향 — 무시해도 되는 것

각 항목에 수정 코드를 함께 제시하고, 문제가 없으면 없다고 솔직히 말해줘.

{{INPUT}} 자리에 내 내용을 넣어 쓰는 프롬프트입니다. 아래 버튼으로 열면 넣는 칸이 나옵니다.

언제 쓰나 · 고친 코드를 올리기 전에 심각한 것부터 짚어받고 싶을 때

샘플 입력

function getDiscount(price, coupons) {
  let total = price;
  for (let i = 0; i <= coupons.length; i++) {
    total = total - coupons[i].amount;
  }
  return total;
}

이런 모양이면 잘 나온 것

우리가 쓴 예시입니다. 실제 실행 결과가 아니고, 답변은 매번 조금씩 다릅니다.

🔴 치명적 — 배열 끝을 넘어감
   3행 i <= coupons.length
   마지막 반복에서 coupons[i] 가 undefined 라 .amount 를 읽는 순간 멈춥니다.
   재현: getDiscount(10000, [{amount:1000}])
   수정: i < coupons.length

🔴 치명적 — 결과가 음수가 됨
   할인 합계가 price 를 넘으면 음수가 반환됩니다.
   재현: getDiscount(1000, [{amount:5000}]) → -4000
   수정: return Math.max(0, total)

🟡 개선 — coupons 가 배열인지, amount 가 숫자인지 확인하지 않습니다

🟢 취향 — reduce 로 쓰면 짧아집니다

받은 답 확인하기

잘못 나왔을 때 이어서 보낼 말

각 지적에 대해 그렇게 되는 입력값을 하나씩 적어줘. 재현 조건을 못 적는 지적은 🟢 로 내려줘.
도서관에서 열기 — 내 내용 넣고 복사하기