[Js] ๋ฐฐ์ด | javascript ๋ฐฐ์ด | ๋ฐฐ์ด์ด๋?
- -
ํด๋น ํฌ์คํ ์ "์ํ์ฝ๋ฉ"์ ์ด๊ณ ์ ๋์ ๊ฐ์๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ์ฌ๋ฆฐ ๊ฒ์๊ธ ์ ๋๋ค.
์์ ์ ์ธ ์ฉ๋๊ฐ ์๋, ๊ฐ์ธ ๊ณต๋ถ ์ ๋ฆฌ ๋ชฉ์ ์ผ๋ก ์ฌ๋ฆฌ๋ ๊ธ์์ ๋ฏธ๋ฆฌ ์๋ฆฝ๋๋ค.
๋ฐฐ์ด
๋ฐฐ์ด(array)์ด๋ ์ฐ๊ด๋ ๋ฐ์ดํฐ๋ฅผ ๋ชจ์์ ํต์ผ๋ก ๊ด๋ฆฌํ๊ธฐ ์ํด์ ์ฌ์ฉํ๋ ๋ฐ์ดํฐ ํ์ ์ด๋ค.
๋ณ์๊ฐ ํ๋์ ๋ฐ์ดํฐ๋ฅผ ์ ์ฅํ๊ธฐ ์ํ ๊ฒ์ด๋ผ๋ฉด
๋ฐฐ์ด์ ์ฌ๋ฌ ๊ฐ์ ๋ฐ์ดํฐ๋ฅผ ํ๋์ ๋ณ์์ ์ ์ฅํ๊ธฐ ์ํ ๊ฒ์ด๋ผ๊ณ ํ ์ ์๋ค.
์๋์ ์์ ๋ฅผ ๋ณด์.
๋ณ์ name์๋ ๋ฌธ์ haeun์ด ํ ๋น๋์๋ค. ์ด์ ๋ถํฐ name์ ํธ์ถํ๋ฉด ๋ฌธ์ haeun์ ์ฌ์ฉํ ์ ์๋ค.
<script>
var name = 'haeun'
alert(name);
</script>
๋ฐฐ์ด์ ์์ฑ
Q. ์ฌ๋ฌ ๊ฐ์ ๋ฐ์ดํฐ๋ฅผ ํ๋์ ๋ณ์์ ๋ด์์ ๊ด๋ฆฌํ ์ ์๋ ๋ฐฉ๋ฒ์ ์์๊น?
A. ์๋ค! ๋ฐฐ์ด์ ์ฐ๋ฉด ๋๋ค.
๋ณ์ member์ ํ์์ ๋ณด๋ฅผ ๋ด์๋ณด์. ๋๊ดํธ([])๋ ๋ฐฐ์ด์ ๋ง๋๋ ๊ธฐํธ๋ค.
๋๊ดํธ ์์ ๋ฐ์ดํฐ๋ฅผ ์ฝค๋ง(,)๋ก ๊ตฌ๋ถํด์ ๋์ดํ๋ฉด ๋ฐฐ์ด์ด ๋๋ค.
<script>
var member = ['haeun', 'admin', 'root']
</script>
ํ๋์ ๋ณ์์ 3๊ฐ์ ๋ฐ์ดํฐ๋ฅผ ๋ด์๋ค.
๊ฐ๊ฐ์ ๋ฐ์ดํฐ๋ฅผ ์์(Element)์ด๋ผ๊ณ ๋ถ๋ฅธ๋ค.
์ ๊ทธ๋ผ ์ด ๋ฐ์ดํฐ๋ฅผ ๊บผ๋ด์ค๋ ค๋ฉด ์ด๋ป๊ฒ ํด์ผ ํ ๊น? ์๋์ ์์ ๋ฅผ ๋ณด์.
<script>
var member = ['haeun', 'admin', 'root']
alert(member[0]);
alert(member[1]);
alert(member[2]);
</script>
๊ฒฐ๊ณผ๋ ์๋์ ๋ฌธ์์ด์ ์ฐจ๋ก๋ก ๊ฒฝ๊ณ ์ฐฝ์ผ๋ก ์ถ๋ ฅ ํ ๊ฒ์ด๋ค.
haeun
admin
root
์ฆ ๋ฐฐ์ด์ ๋ด๊ฒจ์๋ ๊ฐ์ ๊ฐ์ ธ์ฌ ๋๋ ๋๊ดํธ ์์ ์ซ์๋ฅผ ๋ฃ๋๋ค.
์ด ์ซ์๋ฅผ ์์ธ(index)๋ผ๊ณ ๋ถ๋ฅด๊ณ 0๋ถํฐ ์์ํ๋ค.
์ฆ ์ฒซ๋ฒ์งธ ์์(egoing)๋ฅผ ๊ฐ์ ธ์ค๋ ค๋ฉด ๋๊ดํธ ์์ 0์ ๋ฃ์ด์ฃผ์ด์ผ ํ๋ค๋ ๊ฒ์ด๋ค.
๋๋ฒ์งธ๋ 1, ์ธ๋ฒ์งธ๋ 2๋ฅผ ์ ๋ ฅํ๋ค. ์ด ๊ฐ์ ์ด์ฉํด์ ๋ฐฐ์ด์ ์ ์ ๋ ๊ฐ์ ๊ฐ์ ธ์ฌ ์ ์๋ค.
๊ทธ๋ ๋ค๋ฉด ๋ฐฐ์ด์ ์ ์ฐ๋ ๊ฒ์ผ๊น?
๋ฐฐ์ด์ด ์๋ค๋ฉด
๊ทธ๋ ๋ค๋ฉด ๋ฐฐ์ด์ด ์๋ค๋ฉด ์ด๋ป๊ฒ ๋ ๊น?
์๋ฅผ ๋ค์ด ๋งด๋ฒ์ ์ด๋ฆ์ ์ ๊ณตํ๋ ํจ์๋ฅผ ์ ๊ณตํด์ผ ํ๋ค๊ณ ํด๋ณด์.
๊ทธ๋ฐ๋ฐ ํจ์๋ ํ๋์ ๊ฐ๋ง์ ๋ฐํ(return) ํ ์ ์๋ค. ์๋์ ์๋ฅผ ๋ณด์.
<script>
function get_member1(){
return 'egoing';
}
document.write(get_member1());
function get_member2(){
return 'k8805';
}
document.write(get_member2());
function get_member3(){
return 'sorialgi'
}
document.write(get_member3());
</script>
ํ๋์ ํจ์๋ ํ๋์ ๊ฐ๋ง์ ๋ฐํํ ์ ์๊ธฐ ๋๋ฌธ์ ์์ ๊ฐ์ด ๊ฐ๊ฐ์ ํ์์ ๋ณด๋ฅผ ๋ฐํํ๋ ํจ์๋ฅผ ๋ง๋ค์๋ค.
์ด๋ฒ์ ๋ฐฐ์ด๋ฅผ ์ด์ฉํ ์๋์ ์ฝ๋๋ฅผ ๋ณด์.
<script>
function get_members(){
return ['egoing', 'k8805', 'sorialgi'];
}
var members = get_members();
document.write(members[0]);
document.write(members[1]);
document.write(members[2]);
</script>
๋งด๋ฒ๋ฅผ ๋ด๊ณ ์๋ ๋ฐฐ์ด๋ฅผ ๋ฐํํ๊ณ ์๋ค.
์ด๋ ๊ฒ ๋๋ฉด, ๊ฐ๋จํ๋ฉด์๋ ์ฌ๋ฌ ๊ฐ์ ๋ฐํ ํ๋ ๋ฏํ ํจ๊ณผ๋ฅผ ์ค๋ค.
๋ฐฐ์ด์ ์ฌ์ฉ
๋ฐฐ์ด์ ์ง๊ฐ๋ ๋ฐ๋ณต๋ฌธ๊ณผ ๊ฒฐํฉํ์ ๋ ๋ํ๋๋ค.
๋ฐ๋ณต๋ฌธ์ผ๋ก ๋ฆฌ์คํธ์ ๋ด๊ธด ์ ๋ณด๋ฅผ ํ๋์ฉ ๊บผ๋ด์ ์ฒ๋ฆฌ ํ ์ ์๊ธฐ ๋๋ฌธ์ด๋ค.
๋ด์ฅํจ์ โผ
์๋ฐ ์คํฌ๋ฆฝํธ๊ฐ ์ฐ๋ฆฌ์๊ฒ ๊ธฐ๋ณธ์ ์ผ๋ก ์ ๊ณตํด์ฃผ๋ ํจ์ ์ค,
์๋ฌธ์๋ฅผ ๋๋ฌธ์๋ก ๋ฐ๊พธ์ด ์ฃผ๋ ํจ์๊ฐ ์๋ค.
๋ง์ฝ ๋ด๊ฐ ๋ณ์ a์ ๋ค์ด์๋ ๋ฌธ์์ด์ ๋๋ฌธ์๋ก ๋ฐ๊พธ๊ณ ์ถ๋ค๊ณ ํ์.
var a = 'haeun';
a ๋ ํ์ฌ haeun
a.toUpperCase();
a ๋ ํ์ฌ HAEUN
๋ค์ ์์ ๋ฅผ ๋ณด์
<!DOCTYPE html>
<html>
<head>
<title>haha</title>
</head>
<body>
<script type="text/javascript">
function get_members(){
var member = ['haeun','admin','root'];
return member;
}
members = get_members();
// members.length๋ ๋ฐฐ์ด์ ๋ด๊ธด ๊ฐ์ ์ซ์๋ฅผ ์๋ ค์ค๋ค.
for(var i =0; i<members.length; i++){
document.write(members[i].toUpperCase()+"<br />");
}
</script>
</body>
</html>
๊ฒฐ๊ณผ๋ ์๋์ ๊ฐ๋ค.
์์ ์์ ์์ ์ฃผ๋ชฉํด์ผ ํ ๊ฒ์ ๋ฐ๋ณต๋ฌธ๊ณผ ๋ฐฐ์ด์ ๊ฒฐํฉํ ๋ถ๋ถ์ด๋ค.
๋ฐ๋ณต๋ฌธ์ ์ด์ฉํด์ ๋ฐฐ์ด members์ ๋ด์ฉ์ ํ๋์ฉ ๊บผ๋ธ ํ์ ์ด๋ฆ์ ๋๋ฌธ์๋ก ๋ณ๊ฒฝํ ํ์ ์ถ๋ ฅํ๊ณ ์๋ค.
์ ๋ฆฌํ๋ฉด, ๋ฐฐ์ด์ด๋ ์ฐ๊ด๋ ์ ๋ณด๋ฅผ ํ๋์ ๊ทธ๋ฃน์ผ๋ก ๊ด๋ฆฌํ๊ธฐ ์ํด์ ์ฌ์ฉํ๋ค.
๊ทธ๋ฆฌ๊ณ ๊ทธ ์ ๋ณด๋ฅผ ์ฒ๋ฆฌ ํ ๋๋ ๋ฐ๋ณต๋ฌธ์ ์ด์ฉํ๋ค.
๋ฐฐ์ด์ ์ ์ด
๋ฐฐ์ด์ ๋ณต์์ ๋ฐ์ดํฐ๋ฅผ ํจ์จ์ ์ผ๋ก ๊ด๋ฆฌ, ์ ๋ฌํ๊ธฐ ์ํ ๋ชฉ์ ์ผ๋ก ๊ณ ์๋ ๋ฐ์ดํฐ ํ์ ์ด๋ค.
๋ฐ๋ผ์ ๋ฐ์ดํฐ์ ์ถ๊ฐ/์์ /์ญ์ ์ ๊ฐ์ ์ผ์ ํธ๋ฆฌํ๊ฒ ํ ์ ์๋๋ก ๋๋ ๋ค์ํ ๊ธฐ๋ฅ์ ๊ฐ์ง๊ณ ์๋ค.
๋ช๊ฐ์ง ์ค์ํ ๊ธฐ๋ฅ๋ค๋ง ์ดํด๋ณด์.
๋ฐฐ์ด์ ํฌ๊ธฐ
์๋์ ๊ฐ์ ๋ฐฉ๋ฒ์ผ๋ก ๋ฐฐ์ด์ ํฌ๊ธฐ๋ฅผ ์์๋ผ ์ ์๋ค. ๊ฒฐ๊ณผ๋ 5์ด๋ค.
<script>
var arr = [1, 2, 3, 4, 5];
alert(arr.length);
</script>
๋ฐฐ์ด์ ์กฐ์
์ถ๊ฐ
๋ค์์ ๋ฐฐ์ด์ ๋์ ์์๋ฅผ ์ถ๊ฐํ๋ ๋ฐฉ๋ฒ์ด๋ค.
push๋ ์ธ์๋ก ์ ๋ฌ๋ ๊ฐ์ ๋ฐฐ์ด(li)์ ์ถ๊ฐํ๋ ๋ช ๋ น์ด๋ค.
๋ฐฐ์ด li์ ๊ฐ์ a, b, c, d, e, f๊ฐ ๋๋ค.
<script>
var li = ['a','b','c','d','e'];
li.push('f');//push๋ ์๋ฐ์คํฌ๋ฆฝํธ๊ฐ ๊ฐ์ง๊ณ ์๋ ๋ด์ฅํจ์.
alert(li);
</script>
push๋ ํ๊ฐ๋ฅผ ์ถ๊ฐํด์ฃผ๋ ๋ช ๋ น์ด๋ผ๊ณ ํ๋ค๋ฉด, concat์ ์ฌ๋ฌ๊ฐ๋ฅผ ์ฐ๊ฒฐ ํด์ฃผ๋ ๋ช ๋ น์ด๋ผ๊ณ ํ ์ ์๋ค.
concat์ ๋ณต์์ ์์๋ฅผ ๋ฐฐ์ด์ ์ถ๊ฐํ๋ ๋ฐฉ๋ฒ์ด๋ค. concat์ ์ธ์๋ก ์ ๋ฌ๋ ๊ฐ์ ์ถ๊ฐํ๋ ๋ช ๋ น์ด๋ค.
<script>
var li = ['a','b','c','d','e'];
li = li.concat(['f','g']);
alert(li);
</script>
๋ค์์ ๋ฐฐ์ด์ ์์์ ์ ์์๋ฅผ ์ถ๊ฐํ๋ ๋ฐฉ๋ฒ์ ์์๋ณด๋๋ก ํ๊ฒ ๋ค.
unshift๋ ์ธ์๋ก ์ ๋ฌํ ๊ฐ์ ๋ฐฐ์ด์ ์ฒซ ๋ฒ์งธ ์์๋ก ์ถ๊ฐํ๊ณ ๋ฐฐ์ด์ ๊ธฐ์กด ๊ฐ๋ค์ ์์ธ์ 1์ฉ ์ฆ๊ฐ์ํจ๋ค.
<script>
var li = ['a','b','c','d','e'];
li.unshift('z');
alert(li);
</script>
์ฆ ๋ฐฐ์ญ์ z, a, b, c, d, e ๊ฐ ๋๋ค.
๋ง์ฝ ๋๋ฒ์งธ ์ธ๋ฑ์ค ๋ค์ ๋๋ฌธ์ B๋ฅผ ๋ฃ๊ณ ์ถ๋ค๋ฉด ์๋์ ๊ฐ์ดํ๋ค.
splice๋ ์ฒซ๋ฒ์งธ ์ธ์์ ํด๋นํ๋ ์์๋ถํฐ ๋๋ฒ์งธ ์ธ์์ ํด๋นํ๋
์์์ ์ซ์๋งํผ์ ๊ฐ์ ๋ฐฐ์ด๋ก๋ถํฐ ์ ๊ฑฐํ ํ์ ๋ฆฌํดํ๋ค.
๊ทธ๋ฆฌ๊ณ ์ธ๋ฒ์งธ ์ธ์๋ถํฐ ์ ๋ฌ๋ ์ธ์๋ค์ ์ฒซ๋ฒ์งธ ์ธ์์ ์์ ๋ค์ ์ถ๊ฐํ๋ค.
์๋์ ์์๋ฅผ ๋ณธ๋ค๋ฉด 2 ์ฆ (0,1,2) ์ธ๋ฒ์งธ ์๋ฆฌ์ ๋ฐฐ์ด์ ์ถ๊ฐํ ๊ฒ์ด๋ฉฐ,
์ ๊ฑฐํ ์์๋ 0 ๊ฐ๋ ๋ป์ด๋ค.
์ถ๊ฐํ๋ ๊ฐ์ 'B'์ด๋ค.
<script>
var li = ['a','b','c','d','e'];
li.splice(2,0,'B');
alert(li);
</script>
๊ฒฐ๊ณผ๋ ์๋์ ๊ฐ๋ค.
์ ๊ฑฐ๋ฅผ ์์๋ก,
li.splice(2,1,'CBA');๋ฅผ ์ ๋ ฅํ๊ฒ ๋๋ฉด, 3๋ฒ์งธ ์๋ฆฌ์ ์ถ๊ฐํ๋,
์๋ ๊ธฐ์กด์ ์๋ 3๋ฒ์งธ ๋ฐฐ์ด ์์๊ฐ ํ๊ฐ ์ญ์ ๋๊ณ
๊ทธ ์๋ฆฌ์ CBA๊ฐ ์ค๊ฒ๋๋ค.
์ฆ c๊ฐ ์ฌ๋ผ์ง ๊ฒ์ด๋ค.
๊ผญ ๋ค ์ธ์ธํ์๋ ์๊ณ , ๋ฉ๋ด์ผ์ ์ฐพ์์ ํ์ํ ๋๋ง๋ค ์ฐพ์ ๋ณผ ์ ์์ผ๋ฉด ๋๋ค.
์ ๊ฑฐ
๋ค์์ ๋ฐฐ์ด์ ์ฒซ๋ฒ์งธ ์์๋ฅผ ์ ๊ฑฐํ๋ ๋ฐฉ๋ฒ์ด๋ค.
shift๋ฅผ ์ฌ์ฉํ๋ฉด ๋๋ค.
<script>
var li =['a','b','c','d','e'];
li.shift();
alert(li);
</script>
์ด๋ ๊ฒ shift๋ฅผ ํ๋ฉด, ๋ฐํํด์ฃผ๋ return๊ฐ์ผ๋ก 'a'๋ฅผ ์ฃผ๋๋ฐ
์ด๋ li.shift()๊ฐ ๋ฐํํด์ฃผ๋ ๊ฐ์ด๋ฉฐ,
์ค์ li ๋ณ์ ์์ ๋ฐฐ์ด์ a๊ฐ ๋น ์ง b,c,d,e๊ฐ ๋จ๊ฒ ๋๋ค.
๋ค์์ ๋ฐฐ์ด ๋์ ์ ์์๋ฅผ ๋ฐฐ์ด li์์ ์ ๊ฑฐํ๋ค. ์ด๋๋ pop๋ฅผ ์ฌ์ฉํ๋ค.
๊ฒฐ๊ณผ๋ a, b, c, d ๋ค.
<script>
var li =['a','b','c','d','e'];
li.pop();
alert(li);
</script>
์ ๋ ฌ
๋ค์์ ์ ๋ ฌํ๋ ๋ฐฉ๋ฒ์ด๋ค.
์ ๋ ฌ์ ์ํด ์ฌ์ฉํ๋ ํจ์๋ sort์ reverse๊ฐ ์๋ค.
<script>
var li = ['c','e','a','b','d'];
var sort = li.sort(); //sort๋ผ๋ ๋ณ์์์ li.sort๋ฅผ ๋ฃ๋๋ค.
alert(sort); //์ ๋ ฌ๋ ๋ฌธ์์ด ์ถ๋ ฅ
//์ญ์์ผ๋ก ์ ๋ ฌํ๊ณ ์ถ๋ค๋ฉด?
var reverse = li.reverse();//reverse๋ผ๋ ๋ณ์์์ li.reverse๋ฅผ ๋ฃ๋๋ค.
alert(reverse); //์ญ์ ์ ๋ ฌ
</script>
'Languages > Java Script' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
๋น์ ์ด ์ข์ํ ๋งํ ์ฝํ ์ธ
-
[Js] ๋ชจ๋ | ๋ชจ๋์ ์ฌ์ฉ | Node.js์์์ ๋ชจ๋์ ๋ก๋ | javascript ๋ชจ๋ | ๋ผ์ด๋ธ๋ฌ๋ฆฌ 2021.02.04
-
[Js] ๊ฐ์ฒด | javascript ๊ฐ์ฒด | ๊ฐ์ฒด ์งํฅ ํ๋ก๊ทธ๋๋ฐ 2021.02.03
-
[Js] ํจ์ | ํจ์์ ํ์ | ํจ์์ ์ ์์ ํธ์ถ | ์ ๋ ฅ๊ณผ ์ถ๋ ฅ 2021.02.03
-
[Js] ๋ฐ๋ณต๋ฌธ | javascript ๋ฐ๋ณต๋ฌธ | ๋ฐ๋ณต๋ฌธ ์ ์ด, ์ค์ฒฉ | for,while 2021.02.02
์์คํ ๊ณต๊ฐ ๊ฐ์ฌํฉ๋๋ค