문제
객체와 키를 입력받아 키에 해당하는 값이 배열인 경우, 100 보다 작은 요소들만 갖는 배열을 리턴해야 합니다.
입력인자
obj : 임의속성을 갖는 객체
property : string 타입의 키
입출력 예시
const obj = {
key: [1000, 20, 50, 500],
};
let output = getElementsLessThan100AtProperty(obj, 'key');
console.log(output); // --> [20, 50]
풀이코드 설명
function lessThan100(number) {
// 100이하인지 체크하고 return 해서 반환해줍니다.
return number < 100;
}
function getElementsLessThan100AtProperty(obj, property) {
// TODO: 여기에 코드를 작성합니다.
// arr 변수를 선언하고 obj[property] 객체와 키값을 입력받고 밸류변수를 선언합니다.
let arr = obj[property];
if (Array.isArray(arr)){
//자바스크립트에서 arr이 배열인지 체크하는 함수를 통해 분기처리를한다.
return arr.filter(function(el){
//arr의 필터기능을 이용해서 키에 해당하는 값이 배열에 있을 경우 100이하인지 체크하고 반환해줍니다.
if(typeof el === 'number')
{
return lessThan100(el);
}
})
}
else{
return []
}
}
Javascript 고차 함수문제(5) - getOnlyAllowedToDrink (0) | 2022.12.10 |
---|---|
Javascript 고차 함수문제(4) -getLengthOfElements (0) | 2022.12.10 |
Javascript 고차 함수문제(2) - getIndex (0) | 2022.12.10 |
Javascript 고차 함수문제(1) - pipe (0) | 2022.12.09 |
Javascript 재귀함수 - sumTo (0) | 2022.12.07 |