Ch_4_JS(2)

gyeol2678·2022년 4월 29일

Summary

  • 함수 (화살표 함수, this)
  • 연산자
  • 조건문 (if, switch)

1. 함수

1-1. Key Points

  • function으로 선언
  • return을 사용하지 않고 함수를 호출하면 undefined가 반환된다
  • return은 함수를 종료시킨다 (뒤에 console.log 명령이 있어도 표시되지 않는다)
  • 참조하는 객체가 있는 함수를 method라고 한다

1-2. 화살표 함수 (패턴 중요!)

  • () => {}
  • 화살표함수는 익명함수이다. 변수에 할당해 사용하기 때문에 항상 '함수 표현'이고, 호이스팅이 일어나지 않는다
const hello = () => {return 'hello'}
// return 앞에 아무 명령어가 없다면 중괄호와 return을 생략할 수 있다
const hello = () => 'hello'
  • 객체데이터를 반환하려면 const hello = () => ({})
    화살표함수 생김새와 같아서 ()로 묶어서 객체라는 것을 표시한다
  • 매개변수를 1개만 사용할 때 소괄호 생략 가능
function hello(message) {return `hello ${message}`}
const hello = message => `hello ${message}`
  • 함수에서 key, value가 서로 이름이 같으면 1번만 써도 된다

1-3. this (화살표 함수의 존재 이유)

  • 일반함수에서 this는 this가 호출되는 위치에서 정의된다. 즉 선언위치, 정의위치가 다르다
  • 화살표함수 안에서 this를 사용하면 선언위치에서 정의된다
  • userB.getAge.call(userA)
  • 콜백에 this를 사용할 때 화살표함수를 사용한다

2. 연산자

2-1. 비교

  • a > b
  • a >= b
  • a < b
  • a <= b

2-2. 논리

  • 형변환 다시 정확히.. truthy, falsy, 어느값 반환하는지 정리!
  • a && b
    가장 먼저 찾은 falsy를 반환, falsy가 없으면 마지막 값 반환
  • a || b
    가장 먼저 찾은 truthy를 반환, 없으면 마지막 값 반환
  • !a
    a가 truthy면 false로, falsy면 true로 바뀜 (-y 아닌 것에 주의)

2-3. 삼항

  • 1항(조건) ? 2항 : 3항
  • a ? hello() : null
    a가 truthy? falsy? true면 hello함수 실행, false면 null

3. if statement

  • if 조건은 truthy, falsy로 판단! (falsy 몇가지 빼고는 truthy)
  • falsy 값
0 // 숫자 zero
-0 // 음수 zero
0n // bigint
"" // 빈 string
null // 아무런 값이 없음
undefined // 원시값
NaN // 숫자가 아님

4. switch statement

  • 조건이 어떠한 값으로 딱 떨어질 때 사용
  • switch문은 if문으로 바꿈이 가능하지만, if문은 switch문으로 바꿀 수 없는 경우가 있다. if문이 더 상위 개념
  • if문의 else if, else는 switch문에서 default

0개의 댓글