[ 2024.07.12 ] TIL

yy·2024년 7월 12일

개발일지

목록 보기
83/122

1. 널 병합 연산자 nullish coalescing operator ??

왼쪽 피연산자가

  • null 또는 undefined 일 때 : 오른쪽 피연산자를 반환
  • null 또는 undefined 아닐 때 : 왼쪽 피연산자 반환
const foo = null ?? 'default string';
console.log(foo); //"default string"

참고) 논리 연산자 ||

왼쪽 피연산자가

  • falsy한 값 (null, undefined, false, NaN,'', 0)일 때 : 오른쪽 피연산자 반환

MDN - 널 병합 연산자



2. 정규표현식

문제는 '숫자알파벳'은 항상 있는 그룹이므로 연속하는 두 문자가 숫자 + 문자 구성이면 숫자를 추출하도록 했었는데 이때 문제가 있었다. 만약 숫자가 두자리라면 연속하는 두 문자로는 진짜 숫자를 추출할 수가 없었다. 그래서 결국 정규표현식을 사용했어야했음.

'숫자알파벳*#'으로 구성된 문자열을 아래 정규표현식으로 분리를 할 수 있다.

  const regex = /(\d+)([SDT])([*#]?)/g;
  let matches;

  while (matches = regex.exec(dartResult)) {

    let [_, score, bonus, option] = matches;
  }

심지어 구조할당을 할 수 있었다..!

profile
시간이 걸릴 뿐 내가 못할 건 없다.

0개의 댓글