유데미 강의
- destructing과 spread의 차이점은 대상이 전체이냐 특정이냐에 있다.
- 객체와 배열은 참조형 데이터다.
- map, filter, reduce를 잘 활용하면 리액트가 편해진다!
임시 글에 저장되어 있던 내용에 덧붙여... 백만년 만의 공부를 하는 달걀. (참고로 저 내용으 3월 17일에 작성된 것이다.)
코드잇 강의
05. 값으로서 함수
- 자바스크립트의 함수는 객체(여러 속성을 가짐)와 비슷한 형태다.
- callback 함수: 다른 함수의 파라미터로 전달된 함수
- 고차 함수(High Order Function): 함수를 반환하는 함수
- 일급 함수(First Class Function): 변수나 다른 데이터 구조 안에 할당될 수 있으며 다른 함수의 파라미터로 전달될 수 있고 다른 함수의 반환 값이 될 수 있는 특징을 가진 함수
귀에 걸면 귀걸이, 코에 걸면 코걸이 같은 느낌인가...?
07. Parameter
- 파라미터(parameter): 함수에 정의되어서 전달되는 변수의 개념(매개 변수)을 지칭.
외부로부터 값을 전달받기 위해 함수를 선언할 때 작성된다.
cf. parameter: (일정하게 정한) 한도 <출처: 네이버 영어 사전>
- 아규먼트(argument): 파라미터로 전달되는 구체적인 값(독립 변수)을 지칭.
함수를 호출할 때 파라미터로 전달하는 값을 의미한다.
cf. argument: 논쟁, 언쟁, 말다툼/ 논거, 주장/ 논의 <출처: 네이버 영어 사전>
- 자바스크립트에서 호출하는 함수에 파라미터를 전달해 주지 않는 경우 기본 값이 없으면
undefined
로 인식된다.
- 함수 파라미터에 기본 값이 존재(ES2015 이후로 할당 연산자로 바로 정의 가능)하는 경우
undefined
를 할당해도 기본 값으로 동작한다. (null
은 정상 할당 됨)
09. Arguments
- 자바스크립트 함수 내에서
arguments
객체(자바스크립트의 function property 중 하나)를 통해 이 함수에 전달된 arguments를 담은 유사배열을 호출 할 수 있어서 length 메소드까지는 사용 가능하다. (그러므로 arguments
는 키워드로 사용할 수 없다.)
11. Rest Parameter
- ES2015버전 이후로 유사배열이었던
arguments
를 destruct-reduce 함으로<<이건 내 추측이긴 함.>> 파라미터를 배열의 속성도 포함하여 전달될 수 있도록 한다.
...args
로 사용되며 마지막 파라미터로 전달함.
13. Arrow Function
- 모든 화살표 함수는 익명함수라서, 변수에 할당하거나 다른 함수를 호출할 때 arguments로 사용됨
- 소괄호나 return을 생략할 수 있는 경우: parameter가 하나이거나 함수 내부의 동작이 return 하나일 때
- 객체를 반환할 때는 소괄호 안에 넣어
return
을 생략한 반환이 가능
- arguments 객체가 없음
짧은 감상
for-of
가 생각보다 편한 거 같은데 아직 익숙하지는 않은 모양이다. 와중에 for-in
은 인덱스를 기준으로 반복된다는 사실을 새삼 깨달았음.
처음 접했을 때 엄청나게 내외했던 화살표 함수가 이제 안 쓰면 어색할 정도라니... 자스한 지는 2년차 정도 될 텐데 nn년 쓰고 있는 거 같은 착각 들고 있다니 스스로도 어이가 없음... ㅋㅋㅋㅋ
그리고 mac과 windows를 계속 스위칭해서 쓰다 보니까... 윈도우에서 맥 키 사용하고 맥에서 윈도 키 쓰는 중... 아이고;
대망의 this
는 내일 집중해서 봐야지.