구조분해 할당 : 객체 배열에 다른 객체 배열을 할당하게 된다면 같은 인덱스의 객체 배열의 값이 할당 된다.
이와 같이 객체는 같은 키값끼리 아이템 값이 할당 된다. 여기에 ... 을 붙이게 된다면 남는 값들을 받는 해당 타입으로 받습니다.
객체가 있을때 [키] = 아이템 이렇게 객체를 생성 할 수 있다.
.concat 메서드는 배열을 풀어서 합쳐주는 메서드이다.
es6 에서는 ... 을 활용하여 이어줄 수 있다. ...은 아이템 들을 배열 객체로 묶어 줄 수도 있지만, 반대로 ... 을 사용해서 풀어줄 수 도 있다.
전개연산자
es5 에서는 .assign 을 이용하여 객체에 아이템들을 할달 할 수 있다. 이때 assign 의 인자로 받을 객체와 넣어줄 객체들을 입력받는데 넣어줄 객체 안에서 이름이 겹친다면 뒤에 넣어준 객체의 아이템 대로 초기화가 된다.
하지만 es6에서는 ... 을 활용하여 객체를 풀어서 한번에 합칠 수 있다.
그리고 객체를 활용하여 전개를 하게 된다면
other8 안에 값이 들어가게 되고, other은 선언되지 않는다.
...으로 인자를 받을 때에는 매개변수에 ...을 마지막에 넣어야 한다. 그리고 매개변수로 rest parameter를 한번에 설정할 수는 없다.
또 함수에 매개변수의 개수를 알 수 없는 가변 인자를 받을 때에는 arguments 객체를 통해 받을 수 있다. arguments 객체로 받게 된다면 입력 값들을 객체로 받게 되고 이 객체 안에는 객체의 개수를 알 수 있는 속성 length가 포함이 되어 있다.
string 메서드 substr() 은 from 과length 를 받아서 from 부터 length 의 길이에 해당 되는 값을 리턴 합니다.
.map() 함수는 forEach 와 같이 요소 각각에 함수를 적용한다. 이때의 다른 점은 .map() 은 각각의 결과값을 배열에 모아서 반환한다.
.filter()은 콜백 함수의 테스트를 통과하는 아이템들을 반환한다.
.reduce() 함수는 콜백 함수와 초기값을 매개변수로 받는다. 초기값은 콜백함수의 첫 번째 인자에 초기값으로 들어가게된다.
이렇게 작성하게 된다면 numbers 배열의 아이템들의 전체 합을 출력하게 된다.
chaining의 경우에는 하나의 아이템 마다 적용된다.
this는 객체에서 현재의 값을 가져온다
함수에서 다시 함수를 리턴하게 되면 리턴 함수를 또 불러주어야 한다.
constructor 는 클래스 안에서 생성자를 정의 하는 함수이다.
메서드나 속성등을 정의 할 수 있다.
this 고정 : bind(), call(), apply()를 사용하여 this 를 변경할 수 있다. bind()는 사용한 위상의 객체의 this를 활용한다.
call(), apply() 는 안에 넣어주는 인자의 객체의 this 를 사용한다.
'javascript' 카테고리의 다른 글
js XML (0) | 2022.04.18 |
---|---|
js 추가문법과 함수 (0) | 2022.04.14 |
js 문법 (0) | 2022.04.13 |
js 문법 (0) | 2022.03.14 |
js (0) | 2022.02.21 |