728x90
#문제
객체와 키를 입력받아 키에 해당하는 값이 배열인경우, 마지막 요소가 제거된 새로운 배열을 리턴해라.
주어진 키에 해당하는 값이 배열이고, 빈 배열이 아닌 경우에만 마지막 요소가 제거된 배열을 리턴해야 합니다. 그외의 경우에는 빈배열을 리턴해야 합니다.
#예시
onst obj = {
key: [1, 2, 3],
};
let output = getAllButLastElementOfProperty(obj, 'key');
console.log(output); // --> [1,2]
#내가푼답
if (Array.isArray(obj[key]) === true) {
//return obj[key].pop();
}
#풀이
1.배열이면
마지막 요소가 제거된 새로운 배열 -> slice(0, -1)
2. 그렇지 않으면 빈배열
빈배열: arr.length === 0
#정답
function getAllButLastElementOfProperty(obj, key) {
let prop = obj[key];
if ((Array.isArray(prop) !== true ) || (prop.length ===0)) {
return [];
} else {
return prop.slice(0, -1);
}
}
728x90
'코플릿 기록 > JavaScript' 카테고리의 다른 글
객체 17번 (0) | 2023.01.01 |
---|---|
객체 21번 (continue, break) ★★★★ (2) | 2023.01.01 |
객체 14번★★ (0) | 2023.01.01 |
객체 12번 (속성의 개수)★★ (0) | 2023.01.01 |
객체 19번 (extend) ★★★★ (0) | 2022.12.30 |