함수의 조건에 일치하는 값을 새로운 배열로 담아 반환 한다.
const numbers = [1, 3, 5, 7, 9, 11]; const filterTest = numbers.filter( num => num < 10); console.log(filterTest); //[1, 3, 5, 7, 9]
요소가 10보다 작은 값을 새로운 배열로 담아 반환 한다.
정말 많이 사용할 것 같다.
배열에서 특정 값을 제거할 때 사용한다.
제거 할 인덱스를 명시 해줘야만 한다.
자르고 나서의 기존 배열은 변경 됨.
const numbers = [1, 3, 5, 7, 9, 11]; const index = numbers.indexOf(7); const spliced = numbers.splice(index, 2); //제거 할 요소를 index변수에 담아 index로부터 2개를 자른다는 의미
//자르고 난 후 기존의 배열 console.log(numbers); //[1, 3, 5, 11]
//자른 요소를 새 배열에 담아 반환 console.log(spliced); //[7, 9]
splice()와의 차이점은 기존의 배열을 건드리지 않는다는 점 이다.
제거해야 할 인덱스를 명시 하지 않아도 된다.
기본 문법
//start,end라는 매개변수가 있다. slice(satrt,end) //어떤 인덱스부터(start) 어떤 인덱스까지(end) 전 까지 자를지 의미한다.
const numbers = [1, 3, 5, 7, 9, 11]; const spliced = numbers.slice(2, 5); //2번째 인덱스에서 5번째 전까지의 인덱스를 자름 (5에서 9까지)
//자른 요소를 새 배열에 담아 반환 console.log(spliced) //[5, 7, 9]
//하지만 기존의 배열은 건드리지 않았다. console.log(numbers) //[1, 3, 5, 7, 9, 11]