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

1. filter로 모음 제거
영어에선 a, e, i, o, u 다섯 가지 알파벳을 모음으로 분류합니다. 문자열 my_string이 매개변수로 주어질 때 모음을 제거한 문자열을 return하도록 solution 함수를 완성하세요.
function solution(my_string) {
    // 여기에 코드를 작성하세요
}
console.log(solution('beautiful')); // 'btfl'
filter와 includes를 활용하세요.
예) arr.filter(x => !vowels.includes(x))
2. map으로 대문자 변환
Ghost는 친구들의 이름을 모두 대문자로 바꾸고 싶습니다. names 배열의 모든 이름을 대문자로 변환해 반환하는 solution 함수를 완성하세요.
친구 이름 예시: Irangi, Camel, Shoopa, Nuvis, Liang, Mui
function solution(names) {
    // 여기에 코드를 작성하세요
}
console.log(solution(['Irangi', 'Camel', 'Mui'])); // ['IRANGI', 'CAMEL', 'MUI']
map(콜백): 각 요소를 변환한 새 배열을 만듭니다.
예) arr.map(x => x.toUpperCase())
3. sort로 알파벳순 정렬
Ghost는 친구들의 이름을 알파벳순으로 정렬하고 싶습니다. names 배열을 오름차순(알파벳순)으로 정렬해 반환하는 solution 함수를 완성하세요.
친구 이름 예시: Irangi, Camel, Shoopa, Nuvis, Liang, Mui
function solution(names) {
    // 여기에 코드를 작성하세요
}
console.log(solution(['Shoopa', 'Camel', 'Mui'])); // ['Camel', 'Mui', 'Shoopa']
sort(): 기본적으로 문자열 오름차순 정렬을 합니다.
예) arr.sort()
4. reduce로 글자 수 합계
Ghost는 친구들 이름의 글자 수 총합을 알고 싶습니다. names 배열의 모든 이름의 글자 수를 더해 반환하는 solution 함수를 완성하세요.
친구 이름 예시: Irangi, Camel, Shoopa, Nuvis, Liang, Mui
function solution(names) {
    // 여기에 코드를 작성하세요
}
console.log(solution(['Irangi', 'Camel', 'Mui'])); // 15
reduce(콜백, 초기값): 누적 계산을 합니다.
예) arr.reduce((acc, cur) => acc + cur.length, 0)
5. find로 5글자 이상 찾기
Ghost는 친구들 중 이름이 5글자 이상인 첫 번째 친구를 찾고 싶습니다. names 배열에서 이름이 5글자 이상인 첫 번째 값을 반환하는 solution 함수를 완성하세요.
친구 이름 예시: Irangi, Camel, Shoopa, Nuvis, Liang, Mui
function solution(names) {
    // 여기에 코드를 작성하세요
}
console.log(solution(['Mui', 'Camel', 'Shoopa', 'Liang'])); // 'Camel'
find(콜백): 조건에 맞는 첫 번째 값을 반환합니다.
예) arr.find(x => x.length >= 5)
6. some으로 'a' 포함 여부 확인
Ghost는 친구들 이름에 'a'가 들어간 친구가 있는지 알고 싶습니다. names 배열에 'a'가 포함된 이름이 있으면 true, 아니면 false를 반환하는 solution 함수를 완성하세요.
친구 이름 예시: Irangi, Camel, Shoopa, Nuvis, Liang, Mui
function solution(names) {
    // 여기에 코드를 작성하세요
}
console.log(solution(['Mui', 'Camel', 'Shoopa'])); // true
some(콜백): 조건을 만족하는 값이 하나라도 있으면 true를 반환합니다.
예) arr.some(x => x.includes('a'))
7. every로 모두 대문자인지 확인
Ghost는 친구들 이름이 모두 대문자인지 확인하고 싶습니다. names 배열의 모든 값이 대문자면 true, 아니면 false를 반환하는 solution 함수를 완성하세요.
친구 이름 예시: IRANGI, CAMEL, SHOOPA, NUVIS, LIANG, MUI
function solution(names) {
    // 여기에 코드를 작성하세요
}
console.log(solution(['IRANGI', 'CAMEL', 'MUI'])); // true
every(콜백): 모든 값이 조건을 만족하면 true를 반환합니다.
예) arr.every(x => x === x.toUpperCase())
8. includes로 'Nuvis' 포함 여부 확인
Ghost는 친구들 중에 'Nuvis'가 있는지 확인하고 싶습니다. names 배열에 'Nuvis'가 포함되어 있으면 true, 아니면 false를 반환하는 solution 함수를 완성하세요.
친구 이름 예시: Irangi, Camel, Shoopa, Nuvis, Liang, Mui
function solution(names) {
    // 여기에 코드를 작성하세요
}
console.log(solution(['Irangi', 'Nuvis', 'Mui'])); // true
includes(값): 배열에 값이 포함되어 있는지 확인합니다.
예) arr.includes('Nuvis')
9. forEach로 이름 출력
Ghost는 친구들의 이름을 한 줄씩 출력하고 싶습니다. names 배열의 모든 요소를 한 줄씩 출력하는 solution 함수를 완성하세요.
친구 이름 예시: Irangi, Camel, Shoopa, Nuvis, Liang, Mui
function solution(names) {
    // 여기에 코드를 작성하세요
}
solution(['Irangi', 'Camel', 'Mui']);
// Irangi\nCamel\nMui
forEach(콜백): 각 요소에 대해 함수를 실행합니다.
예) arr.forEach(x => console.log(x))
10. filter와 map 조합
Ghost는 이름이 5글자 이상인 친구들만 소문자로 바꾼 새 배열을 만들고 싶습니다. names 배열에서 5글자 이상인 이름만 소문자로 변환해 반환하는 solution 함수를 완성하세요.
친구 이름 예시: Irangi, Camel, Shoopa, Nuvis, Liang, Mui
function solution(names) {
    // 여기에 코드를 작성하세요
}
console.log(solution(['Irangi', 'Camel', 'Mui', 'Shoopa'])); // ['irangi', 'camel', 'shoop']
filter와 map을 연달아 사용합니다.
예) arr.filter(x => x.length >= 5).map(x => x.toLowerCase())