const setEmplyee = (emp) => {
if (emp.dept === 'front-end'){
emp.name = 'jamson';
emp.phone = '01012345678';
} else {
emp.name = 'ballantines';
emp.phone = '01056781234';
}
return emp;
}
위 코드는 emp를 분기처리하는 간단한 로직입니다. 하지만 옳지 않습니다.
const setEmplyee = (emp) => {
if (emp.dept === 'front-end')
return setFrontEnd(emp);
return setOtherDept(emp);
}
const setFrontEnd = (emp) => {
emp.name = 'jamson';
emp.phone = '01012345678';
return emp;
}
const setOtherDept = (emp) => {
emp.name = 'ballantines';
emp.phone = '01056781234';
return emp;
}
const Table = () => {
const tableList = [...];
return (
tableList.map(item => <TableItem .../>)
)
}
const TableItem = (...) => {
return (
<tr>
<td>title</td>
<td>contents</td>
</trr>
)
}
const setColor = (e) => {
switch (type) {
case + :
return 'red';
case - :
return 'blue';
default:
return 'gray';
}
}
const CompoentA = () => {
const color = setColor('+')
return (
<div color={color} />
)
}
함수에서 한가지 기능만 작성하고 다른 기능을 추가하고 싶다면 함수 이름의 명시적으로 작성해야한다.
출력 인수
const setColor = (color) => {
color = 'red';
};
let color = 'blue';
setColor('blue');
// 객체로 만들어서 작업합니다.
class ColorObj {
constructor(color) {
this.color = color;
}
setColor(changeColor) {
this.color = changeColor
}
console() {
console.log(this.color)
}
}
const color = new ColorObj('blue');
color.console();
color.setColor('red');
color.console();
if (set("username", "unclebob"))..
이 코드는 username 이라는 key에 unclebob를 set하는 것이 성공한 것인지 혹은 값이 맞는 비교하는 지 알기가 어렵습니다.
if (attributeExists("username")) {
setAttribute("username", "unclebob");
}
const delete = aync(Page page) =>{
try {
await deletePageAndAllReferences(page);
}
catch (Exception e) {
logError(e);
}
}
const deletePageAndAllReferences = (page) = >{
...
}
const logError = (e) => {
logger.log(e.getMessage());
}