TIL 24.10.24

윤지·2024년 10월 24일
post-thumbnail

📚 TIL

함수

💡 추가 학습 내용

콤마 연산자(평가연산자)

콤마 연산자는 마지막 표현식의 결과를 반환

const a = 10, 20;
console.log(a); //20

자바스크립트 vs 타입스크립트

자바스크립트는 런타임 언어이기 때문에 실행하기 전까지 결과를 알 수 없다 → 동적 언어

타입스크립트는 정적 기반 언어이기 때문에 실행 전에 에러를 알 수 있다 → 정적 언어

타입스크립트 사용의 주요 이유

  • 타입 안정성: 코드의 예측 가능성 향상 및 런타임 오류 감소
  • 개발자 생산성 향상: 자동 완성, 리팩토링 등 IDE 지원 강화
  • 대규모 프로젝트 관리: 복잡한 코드베이스의 유지보수 용이성 증대
  • 객체지향 프로그래밍 지원: 인터페이스, 제네릭 등 고급 기능 제공

(이거 면접에서 물어봤는데 제대로 답하지 못했던 내용이다... ✏️)

연습문제

재귀함수와 팩토리얼 예제

재귀함수: 자기 자신을 호출하는 방식으로 동작하는 함수

주요 구성요소:

  • 기저 사례(base case): 재귀 호출을 멈추는 조건
  • 재귀 호출: 함수가 자기 자신을 다시 호출하는 부분

팩토리얼 계산을 통한 재귀함수의 작동 방식 설명:

function factorial(n) {
  // 기저 사례: n이 0이거나 1일 때
  if (n === 0 || n === 1) {
    return 1;
  }
  // 재귀 호출
  return n * factorial(n - 1);
}

console.log(factorial(5)); // 출력: 120

예제 설명:

  • 재귀 호출: n과 factorial(n-1)의 곱을 반환하여 계산 진행
  • 기저 사례: n이 0 또는 1일 때 1을 반환하여 재귀 종료

💬 마치며

팩토리얼 문제를 재귀함수라는 걸 이용해 풀 수 있다는 걸 알게 됐다
연습문제 점점 어려워지는데 아직 감자(🥔)인 나는 하나하나 연습장에 적거나 콘솔 찍어보면서 푸는 중... 다른 분들 과제 정답 올리는 속도 보면 사람인가? 인간계산기인가? 싶다 나도 저렇게 되고 싶다!

profile
프론트엔드 공부 기록 아카이빙🍁

0개의 댓글