[데브코스/TIL] DAY9-11 - JavaScript(2)

Minha Ahn·2024년 10월 24일
1

데브코스

목록 보기
7/22
post-thumbnail

Day8부터는 자바스크립트 기초를 다뤘기에 크게 정리할 필요성을 느끼지 못했다. 그러나 너무 기초를 만만하게 보고 자만한 것 같아 정신을 고쳐먹고 늦었지만 TIL을 작성하려고 한다...

📖 자바스크립트 문법

1. 연산자

  • 산술 연산자 (이항 산술 연산자) : +, -, *, /, %, **
  • 증감 연산자 (단항 산술 연산자) : ++, --
    • 전치 연산: 연산 먼저 진행
    • 후치 연산: 연산은 나중에 진행
  • 단항 부정 연산자 : -
  • 대입 연산자 : =
  • 복합 대입 연산자 : +=, -=, *=, /=, %=, **=
  • 비교 연산자 : ==, ===, !=, !==, >, >=, <, <=
    • ==, != : 형변환 후 비교
    • ===, !== : 형변환 없이 비교
  • 삼항 연산자 (조건 연산자) : 비교 ? 참 : 거짓
    • Falsy값 = 0, NaN, 빈 문자열, null, undefined
  • 논리 연산자 : &&(and), ||(or), !(not)

2. 조건문

  • if문
  • switch문

3. 반복문

  • 종류
    • do...while
    • while
    • for
    • for...in : 인덱스로 접근
    • for...of : 값으로 접근
  • continue, break


🦾 자바스크립트 함수

1. 함수 종류

함수 표현식

// 익명 함수
const func = function() { ... }

// 기명 함수 => 변수명으로 호출해야 함
const func = function f() { ... }
  • 기명 함수는 let으로 선언? const로 선언?
    • 문법적으로는 let이든 const든 상관없음
    • 관용적으로 많이 사용하는 건 const (함수 재할당 케이스가 별로 없음)

함수 선언식

function func() { ... }

화살표 함수

const func = () => { ... }

2. 함수의 매개변수

  • 매개변수와 인자의 개수가 일치하지 않아도 됨
    • 매개변수 개수 > 인자 개수 : 인자를 차례로 넣다가 인자가 없으면 undefined
    • 매개변수 개수 < 인자 개수 : 매개변수만큼만 인자넣고, 나머지 인자는 arguments 객체로 접근 가능
  • 함수의 매개변수는 arguments라는 객체에 저장됨
    • 단, 화살표 함수는 불가
    • 유사 객체 배열이기 때문에 for of로 접근 가능
function sum() {
  console.log(arguments[0] + arguments[1]);
}
  • ES6부터 나머지 매개변수 사용 가능 (화살표 함수도 가능)
function sum(...args) {
  console.log(args[0] + args[1]);
}
sum(10, 20);

3. 스코프

  • 식별자를 참조할 수 있는 범위

함수 레벨 스코프

  • 참조 범위가 함수
  • var

블록 레벨 스코프

  • 참조 범위가 블록({ })
  • let, const
profile
프론트엔드를 공부하고 있는 학생입니다🐌

0개의 댓글