[8/8 TIL] 나쁜 자바스크립트 작성 습관 체크

haegnim·2023년 8월 8일
0

TIL

목록 보기
49/52

흥미로운 칼럼을 읽었다. 나는 얼마나 잘 지키고 있을까. 앞으로 고쳐야하는 습관은 무엇이지. 확인해보자.

나쁜 자바스크립트 작성 습관과 작별하기

지양하고 있는 습관

  1. let,const 대신 var를 사용하는 것
  2. 주석을 사용해 코드를 설명하는 것
  3. === 대신 == 를 사용하는 것
  4. API 호출 오류에 대한 부적적한 처리(try/catch)

새로 배운 습관

4. 옵셔널 체이닝

?.?.'앞’의 평가 대상이 undefined나 null이면 평가를 멈추고 undefined를 반환합니다.

명세서에 ?.이 추가되기 전엔 이런 문제들을 해결하기 위해 && 연산자를 사용하였다고 한다. 내가 지금 && 연산자로 처리하는 사람이다. 다음엔 ?.으로 바꿔봐야지

  • ?.를 계속 연결해서 체인을 만들면 중첩 프로퍼티들에 안전하게 접근할 수 있다.
  • ?.는 존재하지 않아도 괜찮은 대상에만 사용해야한다.
  • ?.앞의 변수는 꼭 선언되어 있어야 한다.
  • 단락 평가
    ?.는 왼쪽 평가대상에 값이 없으면 즉시 평가를 멈춥니다.

5. 매직 넘버와 매직 스트링

매직 넘버(magic number), 매직 리터럴(magic literal) 이란 소스 코드에서 의미를 가진 숫자나 문자를 그대로 표현한 것을 말한다.

상수로 선언되어 있지 않은 숫자, 문자열은 무엇을 의미하는지 확신할 수 없게 만든다. 이러한 의미를 파악하기 위해 해당 클래스와 흐름을 이해하기 위해 많은 시간을 요구한다. 상수(static final)로 선언하게 되면 이러한 값들에게 이름이 부여된다. 이름을 통하여 의미와 역할을 확실히 전달할 수 있다.

매직 넘버와 매직 스트링


  1. 객체에서 여러 매개 변수를 사용(단일 매개 변수X)

  1. 약어를 사용
if(x !== ""&& x !== null && x !== undefined){...}
if(!!x){...}

x의 값이 true 일 때 if 문이 동작한다. 위의 코드는 "", null, undefined가 아닐 때만 if 문이 동작하는 반면, 밑의 코드는 NaN, false, 0 과 같은 falsy 값들도 필터링한다.

0개의 댓글