자바스크립트 배열: Difference between revisions

From IT Wiki
No edit summary
No edit summary
 
Line 34: Line 34:
var idx2 = arr.indexOf('d');
var idx2 = arr.indexOf('d');
var TF2 = (idx2 != -1); // false
var TF2 = (idx2 != -1); // false
</pre>
=== 차집합 ===
<pre>
var arr1 = [1, 2, 3];
var arr2 = [2, 4, 5];
var difference = arr1.filter(x => !arr2.includes(x));
// difference => (2) [1, 2]
</pre>
</pre>

Latest revision as of 21:05, 24 January 2021

원소 삭제[edit | edit source]

  • 원소 위치를 기준으로 삭제
> 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"]

원소 포함 여부[edit | edit source]

  • 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

차집합[edit | edit source]

var arr1 = [1, 2, 3]; 
var arr2 = [2, 4, 5];
var difference = arr1.filter(x => !arr2.includes(x));
// difference => (2) [1, 2]