자바스크립트 코딩의 기술_매개변수와 return 문을 정리하라_2
자바스크립트 2021. 6. 20. 12:42(본 포스팅은 길벗의 '자바스크립트-코딩의 기술' 책을 공부하면서 작성되었습니다_내돈내산)
2021.06.19 - [자바스크립트] - 자바스크립트 코딩의 기술_매개변수와 return 문을 정리하라_1
3. 키-값 할당을 단순화 하라
- 객체에 값을 꺼낼 때 사용한 기법을 그대로 거꾸로 사용할 수 있다.
- 변수와 이름이 같은 키를 갖는 키-값 쌍을 객체에 추가하려변 변수 이름만 적으면 된다. 콜론을 작성할 필요도 없다.
const landscape = {
title: 'Landscape',
photographer: 'Nathan',
location: [32.7122222, -103.1405556],
};
// 위의 landscape 객체에 다른 키-값쌍을 추가하고 싶은 경우
function setRegion({ location, ...details }) {
const { city, state } = determineCityAndState(location);
return {
city,
state: state.abbreviation,
...details,
};
}
- 위에서 볼수 있듯이 객체에 있는 키와 같은 변수를 똑같이 해체할당하여 다른 객체에 넣을 수 있으며, 펼침연산자를 이용해 특정 정보를 제외시키고 싶은 경우에도 해체할당을 사용할 수 있다.
4. 나머지 매개변수로 여러개의 인수를 변수로 전달하라.
- 나머지 매개변수를 이용해 개수를 알 수 없는 다수의 매개변수를 전달하는 방법이 있다.
- 펼침연산자를 이용해 배열의 부수적인 조작을 피하고, 원하는 매개변수를 전달할 수 있다.
- 나머지 매개변수를 이용하면 인수목록을 전달해 변수에 담을 수 있게 된다.
function validateCharacterCount(max, ...items) {
return items.every(item => item.length < max);
}
validateCharacterCount(10, 'wvoquie');
// true
validateCharacterCount(10, ...['wvoquie']);
// true
const tags = ['Hobbs', 'Eagles'];
validateCharacterCount(10, ...tags);
// true
validateCharacterCount(10, 'Hobbs', 'Eagles');
// true
- 나머지 인수를 사용하는 경우 그리고 이유
- 인수를 배열로 다룬다는 것을 다른 개발자들에게 알려야 하는 경우.
- 코드 디버깅에 도움을 주고 싶은 경우 :나머지 매개변수를 이용해 추가 매개변수를 가져오는 것으로 의심되는 라이브러리 함수를 해석하는데 도움을 얻을 수 있다.
- 함수간에 속성을 전달하면서 해당 속성을 조작할 필요가 없을 때 - 나머지 매개변수는 반드시 마지막 요소가 되어야 한다. (마지막요소만 따로 뽑아내는 메서드를 구축할수는 없다, 하지만 첫번째 요소를 뽑아내는 건 얼마든지 구현 가능함.!)
'자바스크립트' 카테고리의 다른 글
자바스크립트 코딩의 기술_클래스로 인터페이스를 간결하게 유지하라_1 (0) | 2021.06.27 |
---|---|
자바스크립트 코딩의 기술_유연한 함수를 만들어라 (0) | 2021.06.20 |
자바스크립트 코딩의 기술_매개변수와 return 문을 정리하라_1 (0) | 2021.06.19 |
자바스크립트 코딩의 기술_반복문 작성의 기술_2 (0) | 2021.05.30 |
자바스크립트 코딩의 기술_반복문 작성의 기술_1 (0) | 2021.05.30 |