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

From CS Wiki
(새 문서: === 원소 삭제 === * 원소 위치를 기준으로 삭제 <pre> > var months = ['Jan', 'March', 'April', 'June']; > months.splice(2, 1) > months (3) ["Jan", "March", "June"] </pre...)
 
No edit summary
 
(3 intermediate revisions by the same user not shown)
Line 7: Line 7:
(3) ["Jan", "March", "June"]
(3) ["Jan", "March", "June"]
</pre>
</pre>
* 원소 이름을 기준으로 삭제
* 원소 이름을 기준으로 삭제<br>
다소 불편하지만 원소 이름을 기준으로 위치를 찾은 후 위치를 기준으로 삭제해야 한다.
<pre>
<pre>
> var months = ['Jan', 'March', 'April', 'June'];
> var months = ['Jan', 'March', 'April', 'June'];
Line 14: Line 15:
> months
> months
(3) ["Jan", "March", "June"]
(3) ["Jan", "March", "June"]
</pre>
=== 원소 포함 여부 ===
* includes 이용
구형 익스플로러에선 사용할 수 없다.
<pre>
var arr = ['a', 'b', 'c'];
arr.includes('c'); // true
arr.includes('d'); // false
</pre>
* indexOf 이용
** 원래 이 용도의 함수는 아니지만, 가장 대중적으로 사용된다.
** 원소가 존재하지 않는 경우 indexOf의 값이 -1이 반환되므로, 이를 이용한다.
<pre>
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
</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 07: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]