이 메서드는 대상 배열에 대해 해당 요소를 검색하고,
요소를 찾으면 true를 반환하고,
찾지 못하면 false를 반환합니다
const array = [1, 2, 3, 4, 5];
console.log(array.includes(3)); // true
console.log(array.includes(6)); // false
const array = [1, 2, 3, 4, 5];
console.log(array.includes(3, 2)); // true (2번 인덱스부터 검색 시작)
console.log(array.includes(3, 4)); // false (4번 인덱스부터 검색 시작)
const s1 = ["a", "b", "c"];
const s2 = ["com", "b", "d", "p", "c"];
// s1배열과 s2배열은 "b", "c"가 같습니다.
const a = s1.filter(item => s2.includes(item));
console.log(a); ['b', 'c']
즉, filter 기능을 이용해 s2안에 item을 포함하고 있는 속성을 따로 빼낼 수 있습니다.
모음 제거
// 문제 설명
영어에선 a, e, i, o, u 다섯 가지 알파벳을 모음으로 분류합니다.
문자열 my_string이 매개변수로 주어질 때
모음을 제거한 문자열을 return하도록 solution 함수를 완성해주세요.
// 제한사항
my_string은 소문자와 공백으로 이루어져 있습니다.
1 ≤ my_string의 길이 ≤ 1,000
// 입출력 예
my_string result
"bus" "bs"
"nice to meet you" "nc t mt y"
// 주어진 함수
function solution(my_string) {
var answer = "";
return answer;
}
// 풀이 1. 기본적인 반복문을 사용한 방법
function solution(my_string) {
var min_string = "aeiou";
var answer = "";
for (var i = 0; i < my_string.length; i++) {
if (!min_string.includes(my_string[i])) {
answer += my_string[i];
}
}
return answer;
}
// 풀이 2. filter메서드 사용
function solution(my_string) {
var answer = "";
var min_string = "aeiou";
var answer = my_string.split('').filter(item => !min_string.includes(item));
// 1. 문자열 my_string에 split()을 이용하여 배열로 변환합니다.
// 2. 생성된 배열에 filter로 min_string이 포함되지 않은 배열만 출력하도록 만듭니다.
return answer.join('');
// 3. 그렇게 생성된 answer 배열을 하나의 문자열로 합칩니다.
}
// 풀이 3. 정규식을 사용한 방법 // includes와는 상관없지만 기능적으로 비슷하여 넣음
function solution(my_string) {
return my_string.replace(/[aeiou]/g, '');
}
풀이 2. 를 보면
var min_string = "aeiou";
이렇게 문자열로 되있어서 사용에 혼동이 올 수 있는데
function solution(my_string) {
var min_string = ["a", "e", "i", "o", "u"];
var answer = my_string.split("").filter(item => !min_string.includes(item));
return answer.join("");
}
이렇게 배열로 만들어서 사용해도 같은 결과를 출력하는 것을 볼 수 있습니다.