241018 / result === null 과 !result의 차이, 에러처리 4가지(!result, 400 &&, else, catch)

Eunsuk Noh·2024년 11월 21일
post-thumbnail

오늘 할 일

  1. 날짜 모양 바꾸기
  2. 위치 동의 여부 팝업 작업

다음과 같은 날짜 형식에서
2024-10-18 03:00:00
->
10/18 로 만들려고 함
무슨 함수를 써야하더라.........

new Date / getDate / getMonth


일단 빨리 회원가입 파트 수정 부분을 완료하고 merge 후에
위치 동의 여부 팝업을 진행해야겠다


result === null 과 !result의 차이

  1. result === null:
    result가 정확히 null일 때만 참
    즉, result가 null인 경우에만 실행

  2. !result:
    result가 Falsy 값일 때 참
    Falsy 값은 null, undefined, 0, false, NaN, "" (빈 문자열)
    즉, result가 null뿐만 아니라 undefined나 빈 값일 때도 참

따라서 result가 정확히 null인지 확인하고 싶다면 result === null을,
넓은 범위의 값들 (null, undefined 등)도 포함하여 처리하고 싶다면 !result를 사용하는 것이 좋음


에러 처리 4가지

  1. !result - 서버 응답이 없거나 응답을 받지 못했을 경우 (서버 문제)
    에러메세지 : "서버 응답이 없습니다. 다시 시도해주세요" (추천)
  1. 400 && - 상태코드가 400이면서 내용이 "이미 아이디 있음"인 경우

(200은 성공이라 패스)

  1. else - 상태코드가 200도 아니고 400이면서 (2)의 내용이 아니거나, 500인 경우 (상태코드 400, 500)
    > 에러메세지 : "알 수 없는 에러가 발생했습니다. 다시 시도해주세요" (추천)
    서버에서 응답이 왔지만 응답 코드나 내용이 예상과 다를 때를 처리합니다. 서버가 예상치 못한 응답을 보냈거나, 프론트엔드 코드가 그 응답을 제대로 처리하지 못하는 상황일 수 있습니다.
    메시지 내용은 사용자가 정확한 문제를 알 수 없으므로, 일반적으로 "알 수 없는 에러가 발생했습니다"라고 알려주며, 다시 시도해보라는 지침을 줍니다.
  1. catch - 네트워크 오류 / api 호출 실패 / 코드 자체 오류 (클라 문제)
    ex) 인터넷 연결이 안되거나 코드에 문제가 있거나 api에 문제가 있거나
    > 에러메세지 : "전송 요청에 실패했습니다. 다시 시도해주세요" (추천)

아이디 / 이메일 / 인증번호 / 회원가입 .....
에러처리가 다 비슷한 결이라서
똑같은 거 또 하는 게임 같음
근데 이제 머리에는 안 들어오는 ... 하하


이제 남은 문제 마지막 하나
유효성 검사 통과 후 버튼 작동 가능하게 하기

바로바로 이 문제
유효성 검사가 통과되지 않았음에도 중복 확인을 누르면 검사가 됨
고민되는 부분)
유효성 검사 통과 > 버튼 활성화가 나을지?
(내일 계속됩니다)

profile
! draoba emoclew ←

0개의 댓글