문제 |
객체와 키를 입력받아 키에 해당하는 값이 배열인 경우, 100 보다 작은 요소들만 갖는 배열을 리턴해야 합니다. |
입력 |
인자 1 : obj
인자 2 : property
|
출력 |
|
주의 사항 |
|
입출력 예시
const obj = {
key: [1000, 20, 50, 500],
};
let output = getElementsLessThan100AtProperty(obj, 'key');
console.log(output); // --> [20, 50]
- 리턴 값이 있는 함수의 경우 반드시 모든 경우의 대한 예외처리를 해주어야 한다.
=>그래야 Side Effect 를 발생시키지 않고 원하는 값을 제대로 출력해줄 수 있다. - 조건을 보조함수에 적어주며 메인함수의 가독성을 높힌다.
function lessThan100(number) {
//예외의 경우도 처리를 해줘야 한다.
//보조함수를 쓰는 이유는 메인함수의 가독성을 높히기 위해
if(typeof(number) === 'number'){
return number < 100
}else {
return false
}
}
function getElementsLessThan100AtProperty(obj, property) {
if(Array.isArray(obj[property] )){
return obj[property].filter(el => lessThan100(el))
}else return []
}
'알고리즘' 카테고리의 다른 글
삼항연산자 Javascript (0) | 2023.01.15 |
---|---|
재귀 함수 (0) | 2022.12.16 |