Client/Javascript

[Javascript / ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ] ๋ฐฐ์—ด(array) ์‚ฌ์šฉ ๋ฐฉ๋ฒ•๊ณผ ์˜ˆ์ œ

meeeeejin 2020. 6. 13. 17:36

 

๋ฐฐ์—ด์€ ๋ฐ์ดํ„ฐ๋“ค์„ ์ €์žฅํ•  ์ˆ˜ ์žˆ๋Š” ๋ฆฌ์ŠคํŠธ์™€ ๋น„์Šทํ•œ ๊ฐ์ฒด์ž…๋‹ˆ๋‹ค. 

์ธ๋ฑ์Šค(index)๋ฅผ ํ†ตํ•ด ๋ฐฐ์—ด์˜ ์›์†Œ์— ์ ‘๊ทผํ•  ์ˆ˜ ์žˆ๊ธฐ ๋•Œ๋ฌธ์— ๋ฐ์ดํ„ฐ๋“ค์„ ์ˆœ์ฐจ์ ์œผ๋กœ ์ €์žฅํ•˜๊ฑฐ๋‚˜ ์ ‘๊ทผํ•  ๋•Œ ์œ ์šฉํ•ฉ๋‹ˆ๋‹ค. 

 

๋ฐฐ์—ด ์ƒ์„ฑ ๋ฐ ์›์†Œ ์ ‘๊ทผ ๋ฐฉ๋ฒ•

 

  • var arr = [];
    // ๊ธธ์ด๊ฐ€ 0์ธ ๋ฐฐ์—ด arr ์ƒ์„ฑ
  • var arr = [1, 2, 3];
    // ๊ธธ์ด๊ฐ€ 3์ธ ๋ฐฐ์—ด arr๋ฅผ ์ƒ์„ฑํ•˜๊ณ  ์›์†Œ๋ฅผ 1, 2, 3์œผ๋กœ ์ดˆ๊ธฐํ™”
  • arr.length;
    // ๋ฐฐ์—ด arr์˜ ๊ธธ์ด ๋ฐ˜ํ™˜
  • arr[i];
    // ๋ฐฐ์—ด arr์˜ i๋ฒˆ์งธ ์›์†Œ ์ ‘๊ทผ
    // ๋ฐฐ์—ด์˜ ์ธ๋ฑ์Šค๋Š” 0๋ถ€ํ„ฐ ์‹œ์ž‘ํ•จ => ์ฒซ๋ฒˆ์งธ ์›์†Œ: arr[0]

 

<์‚ฌ์šฉ ์˜ˆ์‹œ>

 

1
2
3
4
5
6
7
8
9
10
11
12
// ๋ฐฐ์—ด ์ƒ์„ฑ
var colors = ['๋นจ๊ฐ•''ํŒŒ๋ž‘''๋…ธ๋ž‘'];
 
// ๋ฐฐ์—ด์˜ ๊ธธ์ด
var len = colors.length;    // len = 3
 
// ๋ฐฐ์—ด์˜ ์ฒซ๋ฒˆ์งธ ์›์†Œ ์ ‘๊ทผ
colors[0];    // '๋นจ๊ฐ•'
 
 
// ๋ฐฐ์—ด์˜ ๋งˆ์ง€๋ง‰ ์›์†Œ ์ ‘๊ทผ
colors[len-1];    // '๋…ธ๋ž‘'
cs

 

 

 

๋ฐฐ์—ด์˜ ์›์†Œ ์ถ”๊ฐ€ ๋ฐ ์‚ญ์ œ ๋ฐฉ๋ฒ•

 

  • arr.push(x);
    // arr์˜ ๋งจ ๋์— ์›์†Œ x ์ถ”๊ฐ€
  • arr.pop();
    // ๋งˆ์ง€๋ง‰ ์›์†Œ๋ฅผ ์ œ๊ฑฐํ•œ arr ๋ฐ˜ํ™˜
  • arr.shift();
    // ์ฒซ๋ฒˆ์งธ ์›์†Œ๋ฅผ ์ œ๊ฑฐํ•œ arr ๋ฐ˜ํ™˜
  • arr.unshift(x);
    // arr์˜ ๋งจ ์•ž์— ์›์†Œ x ์ถ”๊ฐ€

 

<์‚ฌ์šฉ ์˜ˆ์‹œ>

 

1
2
3
4
5
6
7
8
9
10
11
12
13
var colors = ['๋นจ๊ฐ•''ํŒŒ๋ž‘''๋…ธ๋ž‘'];
 
// ๋ฐฐ์—ด์˜ ๋งˆ์ง€๋ง‰ ์›์†Œ ์‚ญ์ œ
colors.pop();    // ['๋นจ๊ฐ•', 'ํŒŒ๋ž‘']
 
// ๋ฐฐ์—ด์˜ ๋งˆ์ง€๋ง‰์— ์›์†Œ ์ถ”๊ฐ€
colors.push('๊ฒ€์ •');    // ['๋นจ๊ฐ•', 'ํŒŒ๋ž‘', '๊ฒ€์ •']
 
// ๋ฐฐ์—ด์˜ ์ฒซ๋ฒˆ์งธ ์›์†Œ ์‚ญ์ œ
colors.shift();        // ['ํŒŒ๋ž‘', '๊ฒ€์ •']
 
// ๋ฐฐ์—ด์˜ ๋งจ ์•ž์— ์›์†Œ ์ถ”๊ฐ€
colors.unshift('๋ณด๋ผ');        // ['๋ณด๋ผ', 'ํŒŒ๋ž‘', '๊ฒ€์ •']
cs

 

 

๋‹ค๋ฅธ ์ž์ฃผ ์“ฐ๋Š” ๋ฉ”์„œ๋“œ

  • arr.indexOf(x);
    // arr ๋‚ด์—์„œ ์›์†Œ x์˜ index ๋ฐ˜ํ™˜
  • arr.slice(start, end);
    // arr์˜ start๋ถ€ํ„ฐ end-1๋ฒˆ์งธ ์›์†Œ๊นŒ์ง€๋ฅผ ๋ถ€๋ถ„๋ฐฐ์—ด๋กœ ๋ฐ˜ํ™˜
    // start์˜ ๋””ํดํŠธ ๊ฐ’์€ 0, end์˜ ๋””ํดํŠธ ๊ฐ’์€ ๋ฐฐ์—ด์˜ ๊ธธ์ด
  • arr1.conat(arr2);
    // arr1๊ณผ arr2๋ฅผ ์—ฐ๊ฒฐํ•œ ๋ฐฐ์—ด์„ ๋ฐ˜ํ™˜
  • arr.sort();
    // arr์˜ ์›์†Œ๋ฅผ ์˜ค๋ฆ„์ฐจ์ˆœ์œผ๋กœ ์ •๋ ฌ

 

<์‚ฌ์šฉ ์˜ˆ์‹œ>

 

1
2
3
4
5
6
7
8
9
10
11
12
13
var arr1 = [1234];
 
// ์›์†Œ์˜ ์ธ๋ฑ์Šค ์ฐพ๊ธฐ
arr1.indexOf(1);        // 0
 
// arr1์˜ ๋ถ€๋ถ„ ๋ฐฐ์—ด ๋งŒ๋“ค๊ธฐ
var arr2 = arr1.slice(02);    // arr2 = [1, 2]
 
// arr1๊ณผ arr2๋ฅผ ์—ฐ๊ฒฐํ•˜๊ธฐ
var arr3 = arr1.conat(arr2);    // arr3 = [1, 2, 3, 4, 1, 2]
 
// arr3 ์ •๋ ฌํ•˜๊ธฐ
arr3.sort();    // arr3 = [1, 1, 2, 2, 3, 4]
cs

 

 

 

 

๊ณต๋ถ€ํ•œ ๊ฒƒ์„ ์ •๋ฆฌํ•œ ๋‚ด์šฉ์ž…๋‹ˆ๋‹ค. ์ˆ˜์ •ํ•  ๋ถ€๋ถ„์ด ์žˆ๋‹ค๋ฉด ์•Œ๋ ค์ฃผ์‹œ๋ฉด ๊ฐ์‚ฌํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค :)

 

 

728x90