22.08.18

삶은달걀·2022년 8월 18일
0

함수 다루기

this

  • 함수를 호출한 객체를 가리키는 키워드(메서드 내부에서 호출되는 편), 함수가 호출될 때 어떤 객체가 그 함수를 호출했는지에 따라 상대적으로 값이 변하게 됨
  • arrow function에서는 this가 함수가 선언되기 직전 유효한 this 값과 동일하게 됨<선언과 동시에 실행되기 때문이라고 추측>
  • 객체 내부에서 메소드를 만들 때 메소드가 속해 있는 객체의 프로퍼티가 필요한 상황에서 사용 가능

함수

  • 선언: function 키워드를 사용하는 방식이 가장 일반적
  • 표현식: 함수를 값으로 다루는 방식(변수에 할당하여 선언 가능)
  • 형태: 변수에 할당하여, 객체의 메소드로, 콜백 함수로, 고차 함수로 사용 가능
  • 파라미터의 기본값: 기본값이 있는 파라미터는 호출할 때 전달되는 arguments가 없는 경우 사용
  • arguments 객체: 함수를 호출할 때 전달한 아규먼트들을 배열의 형태로 모아둔 유사 배열 객체(함수 호출 시 전달되는 아규먼트의 개수가 불규칙적일 때 활용 가능)
  • rest parameter: 파라미터 앞에 온점 세 개를 붙여 여러 개로 전달되는 아규먼트들을 배열(배열의 메소드를 자유롭게 사용할 수 있음)로 다루기 가능
  • arrow function: 익명 함수를 좀 더 간결하게 표현할 수 있도록 하는 함수 선언 방식, arguments 객체가 없고 this가 가리키는 값이 일반 함수와 다름

자바스크립트의 문법과 표현

문장(statements)

  • 어떤 동작이 일어나도록 작성된 최소한의 코드 덩어리
  • 선언문, 할당문, 조건문, 반복문(동작을 수행함)
  • 표현식인 문장과 표현식이 아닌 문장으로 나뉨

표현식(expressions)

  • 결과적으로 하나의 값이 되는 모든 코드

표현식이면서 문장, 문장이면서 표현식인 경우

  • 할당연산자, 함수 호출

조건 연산자(Conditional operator)

  • 조건 ? truthy 할 때 표현식 : falsy 할 때 표현식
  • 삼항 연상자(Ternary operator)라고도 함

0개의 댓글