Array method 연습퀴즈 2 (주관식)

1. filter로 짝수만 추출
Ghost는 친구들의 나이 중 짝수만 골라내려고 합니다. ages 배열에서 짝수만 담은 새 배열을 반환하는 solution 함수를 완성하세요.
function solution(ages) {
    // 여기에 코드를 작성하세요
}
console.log(solution([21, 24, 30, 17, 18])); // [24, 30, 18]
filter(콜백): 조건에 맞는 요소만 추출합니다.
예) arr.filter(x => x % 2 === 0)
2. map으로 제곱 구하기
Ghost는 시험 점수의 제곱을 구해 새로운 배열로 만들고 싶습니다. scores 배열의 각 요소를 제곱한 배열을 반환하는 solution 함수를 완성하세요.
function solution(scores) {
    // 여기에 코드를 작성하세요
}
console.log(solution([2, 3, 4])); // [4, 9, 16]
map(콜백): 각 요소를 변환한 새 배열을 만듭니다.
예) arr.map(x => x * x)
3. sort로 내림차순 정렬
Ghost는 달리기 기록을 빠른 순서대로 정렬하고 싶습니다. times 배열을 내림차순(큰 수 → 작은 수)으로 정렬해 반환하는 solution 함수를 완성하세요.
function solution(times) {
    // 여기에 코드를 작성하세요
}
console.log(solution([12, 5, 8, 20])); // [20, 12, 8, 5]
sort(비교함수): 배열을 정렬합니다.
예) arr.sort((a, b) => b - a)
4. reduce로 합 구하기
Ghost는 친구들이 모은 사탕의 총 개수를 알고 싶습니다. candies 배열의 모든 값을 더해 반환하는 solution 함수를 완성하세요.
function solution(candies) {
    // 여기에 코드를 작성하세요
}
console.log(solution([1, 2, 3, 4])); // 10
reduce(콜백, 초기값): 누적 계산을 합니다.
예) arr.reduce((acc, cur) => acc + cur, 0)
5. find로 특정 값 찾기
Ghost는 친구들 중 키가 170cm 이상인 첫 번째 친구를 찾고 싶습니다. heights 배열에서 170 이상인 첫 번째 값을 반환하는 solution 함수를 완성하세요.
function solution(heights) {
    // 여기에 코드를 작성하세요
}
console.log(solution([160, 168, 172, 165])); // 172
find(콜백): 조건에 맞는 첫 번째 값을 반환합니다.
예) arr.find(x => x > 10)
6. some으로 조건 만족 여부 확인
Ghost는 친구들 중 시험에서 100점을 받은 사람이 있는지 알고 싶습니다. scores 배열에 100이 있는지 true/false로 반환하는 solution 함수를 완성하세요.
function solution(scores) {
    // 여기에 코드를 작성하세요
}
console.log(solution([80, 90, 100, 70])); // true
some(콜백): 조건을 만족하는 값이 하나라도 있으면 true를 반환합니다.
예) arr.some(x => x === 100)
7. every로 모두 조건 만족 확인
Ghost는 모든 친구가 10살 이상인지 확인하고 싶습니다. ages 배열의 모든 값이 10 이상이면 true, 아니면 false를 반환하는 solution 함수를 완성하세요.
function solution(ages) {
    // 여기에 코드를 작성하세요
}
console.log(solution([12, 15, 9, 20])); // false
every(콜백): 모든 값이 조건을 만족하면 true를 반환합니다.
예) arr.every(x => x >= 10)
8. includes로 값 포함 여부 확인
Ghost는 친구들 중에 'Camel'이 있는지 확인하고 싶습니다. names 배열에 'Camel'이 포함되어 있으면 true, 아니면 false를 반환하는 solution 함수를 완성하세요.
친구 이름 예시: Irangi, Camel, Shoopa, Nuvis, Liang, Mui
function solution(names) {
    // 여기에 코드를 작성하세요
}
console.log(solution(['Irangi', 'Camel', 'Shoopa'])); // true
includes(값): 배열에 값이 포함되어 있는지 확인합니다.
예) arr.includes('Camel')
9. forEach로 요소 출력
Ghost는 친구들의 이름을 한 줄씩 출력하고 싶습니다. names 배열의 모든 요소를 한 줄씩 출력하는 solution 함수를 완성하세요.
친구 이름 예시: Irangi, Camel, Shoopa, Nuvis, Liang, Mui
function solution(names) {
    // 여기에 코드를 작성하세요
}
solution(['Irangi', 'Camel', 'Shoopa']);
// Irangi\nCamel\nShoopa
forEach(콜백): 각 요소에 대해 함수를 실행합니다.
예) arr.forEach(x => console.log(x))
10. filter와 map 조합
Ghost는 60점 이상인 점수만 2배로 만들어 새로운 배열을 만들고 싶습니다. scores 배열에서 60 이상인 값만 2배로 만들어 반환하는 solution 함수를 완성하세요.
function solution(scores) {
    // 여기에 코드를 작성하세요
}
console.log(solution([50, 60, 70, 80])); // [120, 140, 160]
filter와 map을 연달아 사용합니다.
예) arr.filter(x => x >= 60).map(x => x * 2)