(2023/07/10) 공부 일지!

seumomo_TAEILKIM·2023년 7월 10일
0

공부일지

목록 보기
58/87

JavaScript

값 복사 vs 값 참조

값 복사
원시데이터(null, undefined, string, number, boolean)의 값을 복사 할 수 있다.
=> 복사된 값이 변경되었을 때 변수의 값은 변경되지 않는다.


값 참조
객체 유형(object, array, function)의 값을 참조할 수 있다.
=> 참조된 값이 변경되었을 때 변수의 값도 같이 변경된다.
=> for 문을 사용해서 객체 유형도 복사할 수도 있다.

NameSpace

전역을 오염시키지 않기 위해 변수를 객체에 할당하면 객체 안에서만 사용할 수 있는 변수가 된다.
객체이름.변수이름 = 값

함수

함수를 선언할 때는 함수 선언문과 함수 표현식이 있다.

  • 함수 선언문
    => 함수를 선언하면 최상단으로 호이스팅되기 때문에 어디서든 사용이 가능하다.
    => 엄격모드에서는 블록의 영향을 받기 때문에, 블록 내에서만 사용이 가능하다.
  • 함수 표현식
    => 변수 선언만 최상단으로 호이스팅되기 때문에 코드를 만나기 이전에는 사용할 수 없다.
    => 블록의 영향은 받지 않기 때문에 코드 이후에는 어디서든 사용이 가능하다.

콜백함수
=> 나중에 호출되는 함수

  • arguments 객체를 사용해서 함수의 매개변수 없이 함수를 사용할 수 있다.
    => arguments는 유사배열이며 for-of문으로 순환이 가능하다.

화살표 함수

let func = (arg1, arg2, ...argN) => expression
  • () 안에 매개변수를 담고, => 뒤에 return할 값을 담는다.
    => return 값이 여러 줄이라면, {} 안에 return 지시자 뒤에 값을 담는다.
  • 매개변수에 ...argN => 나머지 인수를 배열로 만들어준다.

배열 만드는 방법

  • [...] (spread syntax)
  • Array.from(객체이름)
.reduce((누적값, 아이템) => {return}, 누적값의초깃값)

=> 누적값의 초깃값부터 순환하면서 아이템들을 연산하고 최종 누적값을 반환한다.

일반 함수화살표 함수에서의 this의 차이점

  • 일반함수의 this
    => 나를 호출한 대상을 가리킨다.
  • 화살표함수의 this
    => this를 바인딩할 수 없으며 부모의 this를 가리킨다.
profile
어제의 나보다 1% 발전하기💪

0개의 댓글