function setDimension(name, value) {
if (name === "height") {
this._height = value;
return;
}
if (name === "width") {
this._width = value;
return;
}
}
function setHeight(value) {this._height = value;}
function setWidth (value) {this._width = value;}
플래그 인수란?: 호출되는 함수가 실행할 로직을 호출하는 쪽에서 선택하기 위해 전달하는 인수다.
플래그 인수가 있으면 함수들의 기능차이가 잘 드러나지 않으며 불리언 플래그는 코드를 읽을때 뜻을 온전하게 전달하기 어렵다. 만약에 플래그 인수를 제거 하고 함수를 분리하는게 어려운 경우는 플래그 별 래핑 함수를 독립적으로 만들도록 한다
aShipment.deliveryDate = deliveryDate(anOrder, true);
aShipment.deliveryDate = deliveryDate(anOrder, false);
function deliveryDate(anOrder, isRush) {
if (isRush) {
//
} else {
//
}
}
function rushDeliveryDate(anOrder) {
//
}
function regularDeliveryRate(anOrder) {
//
}
aShipment.deliveryDate = rushDeliveryDate(anOrder);
aShipment.deliveryDate = regularDeliveryRate(anOrder);