자바스크립트 배열
From IT Wiki
원소 삭제
- 원소 위치를 기준으로 삭제
> var months = ['Jan', 'March', 'April', 'June']; > months.splice(2, 1) > months (3) ["Jan", "March", "June"]
- 원소 이름을 기준으로 삭제
다소 불편하지만 원소 이름을 기준으로 위치를 찾은 후 위치를 기준으로 삭제해야 한다.
> var months = ['Jan', 'March', 'April', 'June']; > var idx = months.indexOf('April'); > if (idx > -1) months.splice(idx, 1); > months (3) ["Jan", "March", "June"]
원소 포함 여부
- includes 이용
구형 익스플로러에선 사용할 수 없다.
var arr = ['a', 'b', 'c']; arr.includes('c'); // true arr.includes('d'); // false
- indexOf 이용
- 원래 이 용도의 함수는 아니지만, 가장 대중적으로 사용된다.
- 원소가 존재하지 않는 경우 indexOf의 값이 -1이 반환되므로, 이를 이용한다.
var arr = ['a', 'b', 'c']; var idx1 = arr.indexOf('c'); var TF1 = (idx1 != -1); // true var idx2 = arr.indexOf('d'); var TF2 = (idx2 != -1); // false
차집합
var arr1 = [1, 2, 3]; var arr2 = [2, 4, 5]; var difference = arr1.filter(x => !arr2.includes(x)); // difference => (2) [1, 2]