Array ๊ฐ์ฒด๋ ์ผ๋ จ์ ๊ฐ๋ค์ ์ ์ฅํ ์ ์๋ ๋ฐฐ์ด์ ์์ฑํ ๋ ์ฌ์ฉํ๋
๋ฆฌ์คํธ ํํ์ ๊ณ ์์ค ๊ฐ์ฒด.
๋ฐฐ์ด์ ๊ฐ ์์๋ ๋ฐฐ์ด์ ์ด๋ฆ๊ณผ ์ธ๋ฑ์ค๋ก ์ ๊ทผํ์ฌ ์ฌ์ฉํ๋ฉฐ ์ธ๋ฑ์ค๋ `0`๋ถํฐ ์์
Array ํน์ง
- ํ์ ์ด ๊ณ ์ ์ ์ด์ง ์๋ค. ์ฆ, ๊ฐ์ ๋ฐฐ์ด์ ์๋ ์์์ ํ์ ์ด ์๋ก ๋ค๋ฅผ ์ ์๋ค.
- 32๋นํธ ์ธ๋ฑ์ค๋ฅผ ์ฌ์ฉ.
- ํฌ๊ธฐ๊ฐ ๋์
- ๋ฐฐ์ด์ ์์ฑํ๊ฑฐ๋ ํฌ๊ธฐ๊ฐ ๋ณ๊ฒฝ๋์ด ๋ค์ ํ ๋น ํ๋๋ผ๋ ๋ฐฐ์ด ํฌ๊ธฐ๋ฅผ ๋ค์ ์ ์ธํ ํ์๊ฐ ์๋ค.
- ๋ฐฐ์ด ๋ฆฌํฐ๋์์ ๋น ์ง ๋ถ๋ถ์ด ์กด์ฌํ ๊ฒฝ์ฐ, ํด๋น ๋ถ๋ถ์ ์์ ๊ฐ์ undefined ๋๋ค.
Array ๊ฐ์ฒด ์์ฑ
- ๋ฐฐ์ด ๋ฆฌํฐ๋์ ์ด์ฉํ 1์ฐจ์ ๋ฐฐ์ด ์์ฑ
<h3>๋ฐฐ์ด</h3>
<script type="text/javascript">
//๋ฐฐ์ด ๋ฆฌํฐ๋์ ์ด์ฉํ 1์ฐจ์ ๋ฐฐ์ด ์์ฑ
var a1 = []; // ๋น ๋ฐฐ์ด
var a2 = [ 10, 20, 30 ];
var a3 = [ 10, 20, 30, ]; // ๋ง์ง๋ง ,๋ ๋ฌด์
var a4 = [ 10, 20, , 30 ]; // ์ค๊ฐ์, ๋ค์์ ๊ฐ์ด ์์ผ๋ฉด undefined
console.log(a1.length);//0
console.log(a2.length);//3
console.log(a3.length);//3
console.log(a4.length);//4
//์์ ์ ๊ทผ, ์ธ๋ฑ์ค๋ 0๋ถํฐ
console.log(a2[0], a4[2]);
//Array ์์ฑ์๋ฅผ ์ด์ฉํ 1์ฐจ์ ๋ฐฐ์ด ์์ฑ
var b1 = new Array();
var b2 = new Array(5); // ๊ธธ์ด๊ฐ 5์ธ ๋ฐฐ์ด. ์์ ๊ฐ์ ๋ชจ๋ undefined
var b3 = new Array(10, 20); // ์ด๊ธฐ๊ฐ์ ๋๊ฐ ๊ฐ์ง๋ 1์ฐจ์ ๋ฐฐ์ด
console.log(b1.length);
console.log(b2.length);
console.log(b3.length);
</script>
- Array() ์์ฑ์๋ฅผ ์ด์ฉํ 2์ฐจ์ ๋ฐฐ์ด
<h3>๋ฐฐ์ด</h3>
<script type="text/javascript">
//Array() ์์ฑ์๋ฅผ ์ด์ฉํ 2์ฐจ์ ๋ฐฐ์ด
var a1 = new Array(2);
a1[0] = new Array(3);
a1[1] = new Array(3);
console.log(a1.length); // 2 ํ์
console.log(a1[0].length); // 3 ์ด์
//๋ฐฐ์ด ๋ฆฌํฐ๋์ ์ด์ฉํ 2์ฐจ์ ๋ฐฐ์ด
var a2 =[[1,2,3],[4,5,6]];
console.log(a2.length); // 2
console.log(a2[0].length); // 3
console.log(a2[1][2]); // 6
</script>
Array ์ํ
<h3>๋ฐฐ์ด-์ํ</h3>
<script type="text/javascript">
var a = [10,20,,30,0]; // 10,20,undefined,30 0
//๋ฐฐ์ด ์์๋ฅผ ์ฒ์๋ถํฐ ๋๊น์ง ์ํ
for(let i =0; i<a.length; i++){
console.log(a[i]);
}
console.log('==============================');
for(let i =0; i<a.length; i++){
if(a[i]){
console.log(a[i]);
}
}
console.log('==============================')
var b =[10,20,30];
for(let n of b){ // ์ปฌ๋ ์
๋ฐ๋ณต
console.log(n);
}
console.log('===============================')
for(let i in b){ // ์ฒจ์๋ง ๊ฐ์ ธ์ด
console.log(b[i]);
}
Array ์ถ๊ฐ
unshift() | ์๋ก์ด ์์๋ฅผ ๋ฐฐ์ด์ ๋งจ ์์ชฝ์ ์ถ๊ฐํ๊ณ , ์๋ก์ด ๊ธธ์ด๋ฅผ ๋ฐํํ๋ค. |
push() | ๋ฐฐ์ด์ ๋์ ํ๋ ์ด์์ ์์๋ฅผ ์ถ๊ฐํ๊ณ , ๋ฐฐ์ด์ ์๋ก์ด ๊ธธ์ด๋ฅผ ๋ฐํํ๋ค. |
<script type="text/javascript">
var a = [10,20];
console.log(a.join());//๋ฐฐ์ด์ ๋ชจ๋ ์์๋ฅผ ๊ฒฐํฉํ์ฌ ํ๋์ ๋ฌธ์์ด๋ก ๋ง๋ฆ
//์์ ์ถ๊ฐ
a[2]=30;
console.log(a.length); // 3
console.log(a.join()); // 10,20,30
a[4]=40;
console.log(a.length);//5
console.log(a.join());//10,20,30,,40
//์กด์ฌํ๋ ์ธ๋ฑ์ค์ ๊ฐ์ ํ ๋นํ๋ฉด ๊ฐ์ด ๋ณ๊ฒฝ ๋๋ค.
a[1]=100;
console.log(a.join());
var b = [10,20];
//๋ค์ ์์ ์ถ๊ฐ
b.push(30);
console.log(b.join());
//๊ฐ์ฅ ์์ ์์ ์ถ๊ฐ
b.unshift(5);
console.log(b.join());
var n = b.unshift(2,3); // ๋ฐฐ์ด์ ๊ธธ์ด ๋ฐํ
console.log(b.join()); // 2,3,5,10,20,30
console.log(n); // 6
</script>
<h3>๋ฐฐ์ด - ์ค๊ฐ์ ์ถ๊ฐ : splice</h3>
<script type="text/javascript">
var a = [ 10, 20, 30 ];
//๊ฐ์ฅ ์์ ์ถ๊ฐ
a.splice(0, 0, 'a', 'b');
//๋ณ๊ฒฝ ์์ ์์น, ์ญ์ ํ ์์น ๋ถํฐ ์ญ์ ํ ๊ฐ์,๋ณ๊ฒฝํ ๊ฐ๋ค ...
console.log(a.join()); // a,b,10,20,30
//๊ฐ์ฅ ๋ค์ ์ถ๊ฐ
a.splice(a.length,0,'x','y');
console.log(a.join());//
//์ค๊ฐ์ ์ถ๊ฐ
a.splice(3,0,'o','p');
console.log(a.join());// a,b,10,o,p,20,30,x,y
var b =[10,20,30,40,50]; // 20๊ณผ 30์ง์ฐ๊ณ ๊ทธ์๋ฆฌ์ a,b,c ์ถ๊ฐ
b.splice(1,2,'a','b','c');
console.log(b.join());
var c = [10,20,30,40,50];
c.splice(1,3);
console.log(c.join());
</script>
Array ์ญ์
length | ๋ฐฐ์ด์ length ์์ฑ๊ฐ์ 0์ผ๋ก ์ค์ ํ๋ฉด ๋ชจ๋ ์์๊ฐ ์ญ์ . |
pop() | ๋ฐฐ์ด์์ ๋ง์ง๋ง ์์๋ฅผ ์ ๊ฑฐํ๊ณ ๊ทธ ์์๋ฅผ ๋ฐํํ๋ฉฐ, ๋ฐฐ์ด์ ๊ธธ์ด๋ ์ค์ด๋ ๋ค. |
shift() | ๋ฐฐ์ด์์ ์ฒซ ๋ฒ์งธ ์์๋ฅผ ์ ๊ฑฐํ๊ณ , ์ ๊ฑฐ๋ ์์๋ฅผ ๋ฐํํ๋ฉฐ, ๋ฐฐ์ด์ ๊ธธ์ด๋ ์ค์ด๋ ๋ค. |
splice() | ๋ฐฐ์ด์ ๊ธฐ์กด ์์๋ฅผ ์ญ์ ๋๋ ๊ต์ฒดํ๊ฑฐ๋ ์ ์์๋ฅผ ์ถ๊ฐํ์ฌ ๋ฐฐ์ด์ ๋ด์ฉ์ ๋ณ๊ฒฝํ๋ค. |
</head>
<body>
<h3>๋ฐฐ์ด-์ ๊ฑฐ</h3>
<script type="text/javascript">
var a = [10,20,30,40,50];
console.log(a.join());
//length๋ฅผ ์ด์ฉํ ๋ง์ง๋ง ์์ ์ ๊ฑฐ
a.length=a.length-1;
console.log(a.join());
//length๋ฅผ ์ด์ฉํ ๋ชจ๋ ์์ ์ ๊ฑฐ
a.length=0;
console.log(a); // []
console.log(a.length);// 0
//pop()๋ฅผ ์ด์ฉํ๋ง์ง๋ง ์์ ์ ๊ฑฐ
var b = [10,20,30,40,50];
b.pop();
console.log(b.join());//10,20,30,40
//shift๋ฅผ ์ด์ฉํ ์ฒ์ ์์ ์ ๊ฑฐ
b.shift();
console.log(b.join());//20,30,40
</script>
</body>
</html>
Array sort()
๋ฐฐ์ด์ ์์๋ฅผ ์ ์ ํ ์์น์ ์ ๋ ฌํ ํ ๊ทธ ๋ฐฐ์ด์ ๋ฐํํ๋ค.
</head>
<body>
<h3>๋ฐฐ์ด - sort</h3>
<script type="text/javascript">
var a =['BBA','BC','CC','ABC'];
a.sort(); // ๋ฌธ์์ ์ ๋์ฝ๋๊ฐ์ ๋ฐ๋ฅธ ์ฌ์ ์ ๋ฐฐ์ด (์ค๋ฆ์ฐจ์)
console.log(a.join()); // ABC,BBA,BC,CC
var b = [55,7,10,35,44];
b.sort(); // ์ซ์๋ ๋ฌธ์์ด๋ก ๋ณํํ์ฌ ์ ๋์ฝ๋ ๊ฐ์ ๋ฐ๋ฅธ ์ฌ์ ์ ๋ฐฐ์ด
console.log(b.join()); // 10,35,44,55,7
var c =['BBA','BC','CC','ABC'];
//์ ๋ ฌ ๊ธฐ์ค์ค์
// ์ค๋ฆ์ฐจ์์ ๋ ฌ, c.sort()ํด๋ ์ค๋ฆ์ฐจ์ ์ ๋ ฌ๋จ
c.sort(function(x,y){
if(x>y)return 1; // ์์๋ฅผ ๋๋ ค์ฃผ๋ฉด
else if(x<y) return -1;
else return 0;
});
console.log(c.join());
// ๋ด๋ฆผ์ฐจ์์ ๋ ฌ
/*var d =['BBA','BC','CC','ABC'];
c.sort(function(x,y){
if(x>y)return -1;
else if(x<y) return 1;
else return 0;
});
console.log(c.join());*/
//c.sort=>
var d =['BBA','BC','CC','ABC'];
d.sort((x,y) => {
if(x>y)return -1;
else if(x<y) return 1;
else return 0;
});
console.log(d.join());
//์ซ์ ์ค๋ฆ์ฐจ์ ์ ๋ ฌ ๋ฐฉ๋ฒ
var e = [55,7,10,35,40];
e.sort((x,y)=>x-y);
console.log(e.join());
//์ซ์ ๋ด๋ฆผ์ฐจ์ ์ ๋ ฌ ๋ฐฉ๋ฒ
var f = [55,7,10,35,40];
e.sort((x,y) => -(x-y));
console.log(e.join());
</script>
</body>
</html>
forEach()
๋ฐฐ์ด์ ์ํํ๋ฉฐ ๋ฐฐ์ด์ ๊ฐ ์์์ ๋ํ์ฌ ์ธ์๋ก ์ฃผ์ด์ง ์ฝ๋ฐฑ ํจ์๋ฅผ ์คํํ๋ค. ๋ฐํ๊ฐ์ undefined. ์ฝ๋ฐฑ ํจ์์ ๋งค๊ฐ๋ณ์๋ฅผ ํตํด ๋ฐฐ์ด ์์์ ๊ฐ, ์์ ์ธ๋ฑ์ค, forEach ๋ฉ์๋๋ฅผ ํธ์ถํ ๋ฐฐ์ด,์ฆ this๋ฅผ ์ ๋ฌ ๋ฐ์ ์ ์๋ค.
</head>
<body>
<p>
<mark>forEach</mark>
</p>
<script type="text/javascript">
var a =[1,2,3,4,5];
var s = 0;
//forEach๋ break๊ฐ ์์ผ๋ฉฐ, return falseํด๋ ๋น ์ ธ ๋์ค์ง ๋ชปํ๋ค.
// a.forEach(function(item){
// s+=item;
// });
a.forEach(item=>s+=item);
console.log(s);
var b=[10,20,30,40,50];
b.forEach(function(item,index){
console.log(item,index);
});
</script>
</body>
</html>
Map()
'๐ป > Javascript' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
(49) [JavaScript] 5์ผ JavaScript ๊ฐ์ฒด - ์์ฑ, ๊ตฌ์กฐ๋ถํด (1) | 2024.04.28 |
---|---|
(49) [JavaScript] 5์ผ JavaScript ๋ด์ฅ๊ฐ์ฒด (0) | 2024.04.28 |
(47) [JavaScript] 3์ผ JavaScript ๋ด์ฅ๊ฐ์ฒด (0) | 2024.04.23 |
(47) [JavaScript] 3์ผ JavaScript ํจ์&์์ธ์ฒ๋ฆฌ (0) | 2024.04.22 |
(46) [JavaScript] 2์ผ JavaScript ๊ธฐ๋ณธ ๋ด์ฅ ํจ์ (1) | 2024.04.19 |