Back-End/Node
Node 프로그래밍 시 유의사항 ver.4 비구조화
Yuni-Q
2018. 9. 22. 18:10
// 출처 https://github.com/ParkSB/javascript-style-guide#%EB%AA%A9%EC%B0%A8// 비구조화
// 1. 하나의 객체에서 여러 속성에 접근할 때는 객체 비구조화를 사용하세요// badfunction getFullName(user) { const firstName = user.firstName; const lastName = user.lastName;
return `${firstName} ${lastName}`;}
// goodfunction getFullName(user) { const { firstName, lastName } = user; return `${firstName} ${lastName}`;}
// bestfunction getFullName({ firstName, lastName }) { return `${firstName} ${lastName}`;}
// 2. 배열 비구조화를 사용하세요.const arr = [1, 2, 3, 4];
// badconst first = arr[0];const second = arr[1];
// goodconst [first, second] = arr;
// 3 여러 값을 반환하는 경우 배열 비구조화가 아닌 객체 비구조화를 사용하세요.// badfunction processInput(input) { // 그리고 기적이 일어납니다 return [left, right, top, bottom];}
// 호출처에서 반환된 데이터의 순서를 고려할 필요가 있습니다const [left, __, top] = processInput(input);
// goodfunction processInput(input) { // 그리고 기적이 일어납니다 return { left, right, top, bottom };}
// 호출처에서는 필요한 데이터만 선택하면 됩니다const { left, top } = processInput(input);
// 출처 https://github.com/ParkSB/javascript-style-guide#%EB%AA%A9%EC%B0%A8
// 비구조화
// 1. 하나의 객체에서 여러 속성에 접근할 때는 객체 비구조화를 사용하세요
// bad
function getFullName(user) {
const firstName = user.firstName;
const lastName = user.lastName;
return `${firstName} ${lastName}`;
}
// good
function getFullName(user) {
const { firstName, lastName } = user;
return `${firstName} ${lastName}`;
}
// best
function getFullName({ firstName, lastName }) {
return `${firstName} ${lastName}`;
}
// 2. 배열 비구조화를 사용하세요.
const arr = [1, 2, 3, 4];
// bad
const first = arr[0];
const second = arr[1];
// good
const [first, second] = arr;
// 3 여러 값을 반환하는 경우 배열 비구조화가 아닌 객체 비구조화를 사용하세요.
// bad
function processInput(input) {
// 그리고 기적이 일어납니다
return [left, right, top, bottom];
}
// 호출처에서 반환된 데이터의 순서를 고려할 필요가 있습니다
const [left, __, top] = processInput(input);
// good
function processInput(input) {
// 그리고 기적이 일어납니다
return { left, right, top, bottom };
}
// 호출처에서는 필요한 데이터만 선택하면 됩니다
const { left, top } = processInput(input);