๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
Web/Node.JS

[HTUN] Chapter 2. JavaScript ๊ธฐ์ดˆ (2)

by Yubin Heo 2020. 6. 25.

 

๐ŸŽ ์ด์ „ ๊ฐ•์˜ ์ •๋ฆฌ

* JavaScript ๋ฌธ๋ฒ•์€ html์˜ <script> ... </script> ์•ˆ์— ์ž‘์„ฑํ•œ๋‹ค.

* ์ถœ๋ ฅ์€ alert, document.write, console.log ํ•จ์ˆ˜๊ฐ€ ์กด์žฌํ•œ๋‹ค.

* let ํƒ€์ž…์€ ์žฌ์„ ์–ธ์ด ๋ถˆ๊ฐ€๋Šฅ ํ•˜๊ณ , const ํƒ€์ž…์€ ์žฌ์„ ์–ธ, ์žฌํ• ๋‹น ๋ชจ๋‘ ๋ถˆ๊ฐ€๋Šฅํ•˜๋‹ค. ๋ฐ˜๋ฉด var์€ ๋ชจ๋‘ ๊ฐ€๋Šฅํ•˜๋‹ค.

* ์ง์ ‘์ ์œผ๋กœ ์‚ฌ์šฉ์ž์—๊ฒŒ ๊ฐ’์„ ์ž…๋ ฅ๋ฐ›๋Š” ๊ฒƒ์€ prompt, ์˜ˆ/์•„๋‹ˆ์˜ค(true/fase) ๋Š” confirm ํ•จ์ˆ˜๋ฅผ ์‚ฌ์šฉํ•œ๋‹ค.

 

๐ŸŽ ์ด๋ฒˆ ๊ฐ•์˜ ๋‚ด์šฉ

* ๋ฐ˜๋ณต๋ฌธ for, while

* ์กฐ๊ฑด๋ฌธ if ~ else ~ else if

* ๋ฐฐ์—ด๊ณผ ๋ฐฐ์—ด ๋ฐ˜๋ณต๋ฌธ foreach

 

๐ŸŽ Step 1. ๋ฐ˜๋ณต๋ฌธ for / while

์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ์˜ ๋ฐ˜๋ณต๋ฌธ์€ C์–ธ์–ด์™€ ๋น„์Šทํ•œ ์ ์ด ๋งค์šฐ ๋งŽ์Šต๋‹ˆ๋‹ค.

๊ธฐ๋ณธ์ ์œผ๋กœ for๋ฌธ์€ for(์„ ์–ธ ๋ฐ ์ดˆ๊ธฐ๊ฐ’ ๋ถ€์—ฌ; ์กฐ๊ฑด์‹; ์ฆ๊ฐ์‹) { ... } ์˜ ํ˜•์‹์œผ๋กœ ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค.

for๋ฌธ์˜ ๊ฒฝ์šฐ, ์„ ์–ธ๋œ ๋ณ€์ˆ˜์˜ ์ดˆ๊ธฐ๊ฐ’ ๋ถ€ํ„ฐ ์กฐ๊ฑด์— ๋งž๋Š” ๋ถ€๋ถ„๊นŒ์ง€ ์ฆ๊ฐ์‹์„ ํ†ตํ•ด ํ•˜๋‚˜์”ฉ ๋ฐ˜๋ณตํ•ฉ๋‹ˆ๋‹ค.์ด์ œ ์‹ค ์‚ฌ์šฉ ์˜ˆ์ œ๋ฅผ ๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค.

 

๊ฒฐ๊ณผ๋ฅผ ํ™•์ธ ํ•ด ๋ณด๊ณ  ์ง์ ‘ ์ฝ”๋“œ๋ฅผ ๋”ฐ๋ผ ์ž‘์„ฑ ํ•ด ๋ณด์„ธ์š”!

 

์œ„์™€ ๊ฐ™์ด ์ž‘์„ฑํ•œ ๋’ค ๊ฒฐ๊ณผ๋ฅผ ํ™•์ธ ํ•ด ๋ณด์‹œ๋ฉด,

์ขŒ์ธก ์‚ฌ์ง„๊ณผ ๊ฐ™์ด ๋‚˜์˜ต๋‹ˆ๋‹ค.

 

 

 

 

 

 

 

 

for๋ฌธ์˜ ๋ฐ˜๋ณต ์‹คํ–‰ ์ˆœ์„œ๋Š” ์•„๋ž˜์™€ ๊ฐ™์Šต๋‹ˆ๋‹ค.

 

1 loop ๋ผ๋Š” ๋ณ€์ˆ˜๋ฅผ ์„ ์–ธํ•œ ๋’ค ๊ทธ ๋ณ€์ˆ˜์˜ ๊ฐ’์„ 1๋กœ ์ดˆ๊ธฐํ™”
2 loop <= 10 (a๊ฐ€ 10๋ณด๋‹ค ์ž‘๊ฑฐ๋‚˜ ๊ฐ™๋‹ค[์ดํ•˜]) ์˜ ์กฐ๊ฑด์ด ๋งŒ์กฑ (true) ํ•  ๊ฒฝ์šฐ ๋‹ค์Œ ์‹์„ ์ˆ˜ํ–‰ํ•จ
3 document.write(`${loop} ๋ฒˆ์งธ ๋ฐ˜๋ณต <br />`); ์„ ์‹คํ–‰ํ•˜์—ฌ ํ˜„์žฌ loop ๊ฐ’๊ณผ ๋ฌธ์ž๋ฅผ ์ถœ๋ ฅํ•จ.
4 loop++ ๋ฅผ ์‹คํ–‰ํ•˜์—ฌ loop์˜ ๊ฐ’์„ 1 ๋งŒํผ ์ฆ๊ฐ€์‹œํ‚ด (์ฆ๊ฐ์—ฐ์‚ฐ์ž)
... ์œ„ ๋‚ด์šฉ์„ loop <= 10์ด false ์ผ๋•Œ ๊นŒ์ง€ ๋ฐ˜๋ณตํ•จ.

 


๋‹ค์Œ์€ While๋ฌธ ์ž…๋‹ˆ๋‹ค.

while ๋ฌธ์€ ์–ด๋–ค ์กฐ๊ฑด๋ฌธ์ด ์ฐธ์ด๊ธฐ๋งŒ ํ•˜๋ฉด ๋ฌธ์žฅ์„ ๊ณ„์†ํ•ด์„œ ์ˆ˜ํ–‰ํ•ฉ๋‹ˆ๋‹ค.

While๋ฌธ์˜ ํ˜•์‹์€ while(์กฐ๊ฑด์‹) { ... } ์ž…๋‹ˆ๋‹ค.

while๋ฌธ์€ ์กฐ๊ฑด์‹์ด false๋ผ๋ฉด ๋‹ค์Œ ์‹์„ ์‹คํ–‰ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

 

 

 

์œ„ ์ฝ”๋“œ๋Š” loop๋Š” 1๋กœ ์ •์˜ํ•ด ๋‘๊ณ , loop๊ฐ€ 10๋ณด๋‹ค ์ž‘์œผ๋ฉด ์‹คํ–‰์‹œํ‚ค๊ฒŒ ํ•˜์—ฌ์„œ

document.write๋ฅผ ์‹คํ–‰ํ•˜๊ณ , loop์˜ ๊ฐ’์„ 1 ๋งŒํผ ํ‚ค์›๋‹ˆ๋‹ค (์ฆ๊ฐ์—ฐ์‚ฐ์ž)

 

๐ŸŽ Step 2. ์กฐ๊ฑด๋ฌธ if ~ else if ~ else

Javascript ์—์„œ๋Š” ๋ฌด์–ธ๊ฐ€ ์กฐ๊ฑด์„ ๊ฑธ๊ณ , ๊ทธ ์กฐ๊ฑด์— ๋งž๊ฒŒ ์‹คํ–‰์„ ๋ถ„๊ธฐ์‹œํ‚ฌ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๊ทธ๋ฅผ ์œ„ํ•ด ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์ด if๋ฌธ ์ž…๋‹ˆ๋‹ค.

 

if๋ฌธ์€ if(์กฐ๊ฑด์‹) { ... } ๋กœ ์‚ฌ์šฉํ•˜๋ฉฐ,์กฐ๊ฑด์‹์ด ์ฐธ (True) ์ผ๋•Œ { ... } ์„ ์‹คํ–‰ํ•ฉ๋‹ˆ๋‹ค.

 

<!DOCTYPE html>
<html lang="ko">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>
    <script>
    	// ์‹คํ–‰ ๊ฒฐ๊ณผ๋ฅผ ์ง์ ‘ ํ™•์ธํ•˜์„ธ์š” (์ž…๋ ฅ์ด๋ผ ์˜ค๋ฅ˜๊ฐ€...)
        let a = 20;
        let b = Number(prompt("์ˆซ์ž๋ฅผ ์ž…๋ ฅํ•˜์„ธ์š”"));
        let c = a + b;
        if (c >= 50) {
            alert("true");
        }
    </script>
</body>
</html>

 

์œ„์™€ ๊ฐ™์ด ์ž‘์„ฑํ•˜์‹œ๋ฉด 30 ์ด์ƒ์˜ ๊ฐ’์„ ์ž…๋ ฅํ–ˆ์„ ๋•Œ์—๋งŒ true ๋ผ๋Š” ์•ˆ๋‚ด์ฐฝ์ด ๋‚˜์˜ค๊ฒŒ ๋ฉ๋‹ˆ๋‹ค.

 

ํ›—. ์ €๋Š” ์—ฌ๋Ÿฌ๋ถ„๋“ค์ด ๋ญ˜ ์›ํ•˜๋Š”์ง€ ๋‹ค ์•Œ๊ณ ์žˆ์Šต๋‹ˆ๋‹ค ใ…Žใ…Žใ…Žใ…Ž

 

์กฐ๊ฑด์ด ๊ฑฐ์ง“ (false) ์ผ ๋•Œ, false ๋ฅผ ์ถœ๋ ฅํ•˜๋Š” ๊ฒƒ์— ๋Œ€ํ•ด์„œ ๋ฐฐ์›Œ๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค.

์‚ฌ์šฉ ๋ฐฉ๋ฒ•์€ ๊ฐ„๋‹จํ•ฉ๋‹ˆ๋‹ค. else { ... } ๋กœ ์‚ฌ์šฉํ•˜์‹œ๋ฉด ๋ฉ๋‹ˆ๋‹ค.

else๋Š” if๋ฌธ์ด ๊ฑฐ์ง“์ผ ๋•Œ ์•„๋ž˜ ์ฝ”๋“œ๋ฅผ ์‹คํ–‰ํ•˜๋Š” ๋ฌธ๋ฒ• ์ž…๋‹ˆ๋‹ค.

 

<!DOCTYPE html>
<html lang="ko">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>
    <script>
        let a = 20;
        let b = Number(prompt("์ˆซ์ž๋ฅผ ์ž…๋ ฅํ•˜์„ธ์š”"));
        let c = a + b;
        if (c >= 50) {
            alert("true");
        } else {
            alert("false");
        }
    </script>
</body>
</html>

 

์œ„ ์ฝ”๋“œ๋ฅผ ์‹คํ–‰์‹œ์ผœ ๋ณด๋ฉด, 30 ์ด์ƒ์„ ์ž…๋ ฅํ–ˆ์„ ๋•Œ์—๋Š” true, ๊ทธ ์ดํ•˜์˜ ๊ฐ’์„ ์ž…๋ ฅํ–ˆ์„ ๋•Œ์—๋Š” false ๊ฐ€ ๋‚˜์˜ต๋‹ˆ๋‹ค.

 

ํ•˜ํ•˜ํ•˜... ๊ทธ์น˜๋งŒ ์—ฌ๋Ÿฌ๋ถ„๋“ค์ด ์ œ์ผ ์›ํ•˜๋Š”๊ฑธ ์•„์ง ์•ˆ ์•Œ๋ ค๋“œ๋ ธ์Šต๋‹ˆ๋‹ค. ใ…Žใ…Ž

 

๋ถ„๋ช…ํžˆ ์—ฌ๋Ÿฌ๋ถ„๋“ค์€ if๋ฌธ์ด ์•„๋‹ ๋•Œ์—, ๋‹ค๋ฅธ ์กฐ๊ฑด์„ ๋ถ€์—ฌํ•˜๊ณ  ์‹ถ์œผ์‹ค ๊ฒ๋‹ˆ๋‹ค(?)

๋„ค. else if์— ๋Œ€ํ•ด์„œ ๋ฐฐ์›Œ๋ณด๋„๋ก ํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค.

 

else if๋Š” ์ฒซ if๋ฌธ์˜ ์กฐ๊ฑด์‹์ด ๊ฑฐ์ง“ (false) ์ผ ๋•Œ, ๋‹ค์‹œ ํ•œ๋ฒˆ ๋” ์กฐ๊ฑด์„ ๋ถ€์—ฌํ•˜์—ฌ

์งˆ์˜ํ•˜๋Š” ๋ฌธ๋ฒ• ์ž…๋‹ˆ๋‹ค.

์‚ฌ์šฉ ๋ฒ•์€ if๋ฌธ๊ณผ ๋น„์Šทํ•œ ๋ฐฉ๋ฒ•์œผ๋กœ, else if (์กฐ๊ฑด์‹) { ... } ์ž…๋‹ˆ๋‹ค.

 

์‚ฌ์‹ค ์ˆœ์„œ๋Š” if ๋ฌธ์„ ์“ฐ๊ณ , ๊ฑฐ์ง“์ผ ๋•Œ else if๋ฅผ ์“ฐ๊ณ , ๊ทธ๊ฒƒ ๋งˆ์ € ๊ฑฐ์ง“์ผ ๋•Œ else ๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.. ;;

์žก์†Œ๋ฆฌ ๋ง๊ณ  ์ฝ”๋“œ ๋ณด์—ฌ๋“œ๋ฆฌ๊ฒ ์Šต๋‹ˆ๋‹ค.

 

<!DOCTYPE html>
<html lang="ko">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>
    <script>
        let a = 20;
        let b = Number(prompt("์ˆซ์ž๋ฅผ ์ž…๋ ฅํ•˜์„ธ์š”"));
        let c = a + b;
        if (c >= 50) {
            alert("true, 50 ์ด์ƒ");
        } else if (c >= 20) {
            alert("true, 20 ์ด์ƒ")
        } else {
            alert("false");
        }
    </script>
</body>
</html>

 

์œ„ ์ฝ”๋“œ๋ฅผ ์‹คํ–‰์‹œ์ผœ ๋ณด๋ฉด, 20 ์ด์ƒ์ธ ์ˆซ์ž๋ฅผ ์ž…๋ ฅํ–ˆ์„ ๋•Œ์—, true, 20 ์ด์ƒ ์ด๋ผ๊ณ  ์ถœ๋ ฅ๋ฉ๋‹ˆ๋‹ค.

ํ›„... ์ด์ œ ๋ชธํ’€๊ธฐ๋Š” ๋๋‚ฌ์Šต๋‹ˆ๋‹ค(?)

 

๐ŸŽ Step 3. ๋ฐฐ์—ด๊ณผ ๋ฐฐ์—ด ๋ฐ˜๋ณต๋ฌธ foreach (์™€... ๋„ˆ๋ฌด ์–ด๋ ต๋‹ค;;)

ใ…‡ใ…ˆ... ๋ฐฐ์—ด ์ข€ ์–ด๋ ค์›Œ์š” ๊ทผ๋ฐ ์•ˆ๋ฉ๋‹ˆ๋‹ค ํ•˜ํ•˜..;;

 

์ฐธ๊ณ ๋กœ, ๋ฐฐ์—ด์„ ๊ณต๋ถ€ํ•˜๊ธฐ ์ „์— ์˜†์— ์–ผ์Œ๋ฌผ์„ ์ค€๋น„ํ•˜์‹œ๊ธฐ ๋ฐ”๋ž๋‹ˆ๋‹ค.

๋จธ๋ฆฌ ๋šœ๊ป‘์ด ํ™œํ™”์‚ฐ์ด ๋˜์–ด๋„ ์ „ ์ฑ…์ž„์ง€์ง€ ์•Š์„๊ฒ๋‹ˆ๋‹ค ;( ใ…‹ใ…‹ใ…‹ใ…‹ใ…‹ใ…‹ใ…‹

์žก์†Œ๋ฆฌ๋Š” ์—ฌ๊ธฐ๊นŒ์ง€ ํ•˜๊ณ , ๋ณธ๊ฒฉ์ ์œผ๋กœ ๋ฐฐ์—ด ๋“ค์–ด๊ฐ€๊ฒ ์Šต๋‹ˆ๋‹ค?

 

์–ด๋Š ์–ธ์–ด๋‚˜ ๋งˆ์ฐฌ๊ฐ€์ง€๋กœ, Javascript ์—์„œ๋„ ๋ฐฐ์—ด์ด๋ž€ ๊ฒƒ์ด ์กด์žฌํ•ฉ๋‹ˆ๋‹ค.ํŒŒ์ด์ฌ์„ ํ•˜์‹œ๋Š” ๋ถ„๋“ค์„ ์œ„ํ•ด ๋ง์”€๋“œ๋ฆฌ์ž๋ฉด, ๋ฆฌ์ŠคํŠธ์™€ ๊ฐ™์€ ๊ฐœ๋…์ž…๋‹ˆ๋‹ค.

 

๋ฐฐ์—ด์ด ๋ญ”์ง€ ์–˜๊ธฐํ•˜๊ธฐ ์ „์—, ์ž ์‹œ ๋ง›๋ณด๊ธฐ๋กœ ๋ง›์žˆ๋Š” ๊ฑธ ๋“ค๋ ค๋“œ๋ฆฌ๊ฒ ์Šต๋‹ˆ๋‹ค(?)์ œ ์ง‘์ด 100๊ฐœ๊ฐ€ ์žˆ๋‹ค๊ณ  ์นฉ์‹œ๋‹ค (์™€ ๊ฐ€์ง€๊ณ  ์‹ถ๋‹ค;;)

 

์ € 100๊ฐœ์˜ ์ง‘ ์ฃผ์†Œ๋ฅผ ๋ชจ๋‘ ๊ฐ’์œผ๋กœ ์ €์žฅํ•ด์•ผ ํ•œ๋‹ค๊ณ  ํ•  ๋•Œ,

๋ฐฐ์—ด์„ ์‚ฌ์šฉํ•œ๋‹ค๋ฉด ํ•œ ๋ฐฐ์—ด์— 100๊ฐœ์˜ ๋ฐฉ(room?) ์„ ํ• ๋‹นํ•˜์—ฌ์„œ ๊ฐ’์„ ์ €์žฅํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

ํ•˜์ง€๋งŒ ๋ฐฐ์—ด์„ ์‚ฌ์šฉํ•˜์ง€ ์•Š๋Š”๋‹ค๋ฉด... myhome1, myhome2, myhome3 ....... myhome100 ์œผ๋กœ

๊ฐ๊ฐ์˜ ๋ณ€์ˆ˜ 100๊ฐœ๋ฅผ ๋ชจ๋‘ ์„ ์–ธํ•˜์—ฌ ๊ฐ’์„ ์ €์žฅํ•ด์•ผ ํ•  ๊ฒƒ ์ž…๋‹ˆ๋‹ค.

๋งค์šฐ ๋น„ํšจ์œจ์  ์ž…๋‹ˆ๋‹ค.

 

Javascript์˜ ๋ฐฐ์—ด์€ ๋‹ค๋ฅธ ์–ธ์–ด์™€๋Š” ์กฐ๊ธˆ ์ฐจ์ด์ ์ด ์žˆ์Šต๋‹ˆ๋‹ค.

๋ณ€์ˆ˜ํƒ€์ž… ๋ณ€์ˆ˜๋ช… = new Array(); ๋กœ ์„ ์–ธํ•˜๊ฑฐ๋‚˜,

๋ณ€์ˆ˜ํƒ€์ž… ๋ณ€์ˆ˜๋ช… = [์›์†Œ๊ฐ’]; ์œผ๋กœ ์„ ์–ธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

 

๋ฐฐ์—ด์„ ์„ ์–ธํ•˜๊ณ  ๋‚œ ๋‹ค์Œ, ๋ฐฐ์—ด์˜ ์ธ๋ฑ์Šค ๊ฐ’์„ ์ด์šฉํ•˜์—ฌ ๋ณ€์ˆ˜๋ช…[์ธ๋ฑ์Šค] ์˜ ํ˜•ํƒœ๋กœ

์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. (์•„ ์ฐธ๊ณ ๋กœ ๋ฐฐ์—ด์˜ ์ธ๋ฑ์Šค๋Š” 0 ๋ถ€ํ„ฐ ์‹œ์ž‘ํ•ฉ๋‹ˆ๋‹ค ใ…Žใ…Ž;;)

 

ํ•˜ํ•˜.... ๋จธ๋ฆฌ๊ฐ€ ํญ๋ฐœํ•˜์‹  ๋ถ„๋“ค๋„ ๊ณ„์‹œ๊ฒ ์ฃ ...? ์–ด๋ ต์ง€ ์•Š์Šต๋‹ˆ๋‹ค ใ…Žใ…Ž

 

 

 

์˜ค์šฐ ์˜ค์šฐ ์˜ค์šฐ ์‹ธ๋ฐœ์ ์ด๊ณ  ์•„๋‹ˆ, ํ™•์‹คํžˆ ๋ฐฐ์—ด์˜ ์ธ๋ฑ์Šค๋Š” 0๋ฒˆ๋ถ€ํ„ฐ ์‹œ์ž‘ํ•œ๋‹ค๋Š” ๊ฒƒ์„ ์•Œ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

 

๊ทธ๋Ÿผ ์ด์ œ ์œ„ ์ฝ”๋“œ์—์„œ for๋ฌธ์„ ์ด์šฉํ•˜์—ฌ ์ € ๋ฐฐ์—ด์˜ ์ธ๋ฑ์Šค๋ฅผ ์‹ธ๊ทธ๋ฆฌ(?) ๋ถˆ๋Ÿฌ๋ณด๋„๋ก ํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค.

๋ชจ๋‘ ์ง‘ํ•ฉ!

 

 

 

์™€ ์€๊ทผ ์‰ฝ๋„ค์š”? ์ €๋ ‡๊ฒŒ ์‰ฝ๊ฒŒ ํ•œ๋ฒˆ์— ๋ถˆ๋Ÿฌ์˜ฌ ์ˆ˜ ์žˆ๋‹ค๋‹ˆ...

์•„๊น ์ €์—๊ฒŒ ์™œ ํ•˜๋‚˜์”ฉ ์ถœ๋ ฅํ•˜๊ฒŒ ์‹œํ‚จ๊ฑฐ์ฃ  ;;

 

์ด์ œ ์‚ฌ๊ณผ, ๋ฐ”๋‚˜๋‚˜ ๋ฅผ ์ธ๋ฑ์Šค์— ๋„ฃ์—ˆ๋‹ค ์น˜๊ณ (?) ์ž์ฃผ ์‚ฌ์šฉํ•˜๋Š” ๋ฐฐ์—ด ์—ฐ์‚ฐ์„ ๋ฐฐ์›Œ๋ด…์‹œ๋‹ค.

 

์ธ๋ฑ์Šค ๊ฐ’์„ ์ด์šฉํ•˜์—ฌ ๋ฐฐ์—ด์˜ ๊ฐ’ ๊ฐ€๋ฅดํ‚ค๊ธฐ

let first = fruits[0]
// ์‚ฌ๊ณผ

let last = fruits[fruits.length - 1]
// ๋ฐ”๋‚˜๋‚˜

๋ฐฐ์—ด์˜ ๋งˆ์ง€๋ง‰์— ๊ฐ’ ํ•˜๋‚˜ ์ถ”๊ฐ€ํ•˜๊ธฐ

let newLength = fruits.push('๋•…์ฝฉ')
// ["์‚ฌ๊ณผ", "๋ฐ”๋‚˜๋‚˜", "๋•…์ฝฉ"]
// ์•ผ ๊ทผ๋ฐ ๋•…์ฝฉ์€ ๊ณผ์ผ์ด ์•„๋‹ˆ์ž–์•„;;

๋ฐฐ์—ด์˜ ๋งˆ์ง€๋ง‰ ๊ฐ’ ํ•˜๋‚˜ ์‚ญ์ œํ•˜๊ธฐ

let last = fruits.pop() // ๋์—์žˆ๋˜ ๋•…์ฝฉ์„ ์ œ๊ฑฐ
// ["์‚ฌ๊ณผ", "๋ฐ”๋‚˜๋‚˜"]
// ํ›„ ํŽธ์•ˆ...

์ธ๋ฑ์Šค ๊ฐ’์— ํ•ด๋‹นํ•˜๋Š” ๋ฐฐ์—ด์˜ ๊ฐ’ ์‚ญ์ œํ•˜๊ธฐ

let removedItem = fruits.splice(pos, 1)
// ["๋”ธ๊ธฐ"]
// ํ•˜... ๋‚˜์ฒ˜๋Ÿผ ์†”๋กœ๊ฐ€ ๋˜์—ˆ๋„ค fruits ๋ฐฐ์—ด์•„..?;;

๋ฐฐ์—ด์˜ ๊ธธ์ด ๊ฐ€์ ธ์˜ค๊ธฐ

let len = fruits.length
// 1

 


์ด์ œ... ๋ฐฐ์—ด์˜ ๋ฐ˜๋ณต๋ฌธ์ด๋ผ๊ณ  ํ•  ์ˆ˜ ์žˆ๋Š” foreach ์— ๋Œ€ํ•ด์„œ ๋ฐฐ์šฐ๊ฒ ์Šต๋‹ˆ๋‹ค.

์†”์งํžˆ foreach๋ฅผ ์ž˜ ์“ฐ๋Š”๊ฑฐ ๊ฐ™์ง„ ์•Š์€๋ฐ... ๊ทธ๋ž˜๋„ ์•Œ๊ธด ์•Œ์•„์•ผ ํ•ฉ๋‹ˆ๋‹ค.

 

 

 

๋„ค. ์ €๊ฒŒ ๋‹ค ์ž…๋‹ˆ๋‹ค. ์ข€ ์–ด๋ ต์ฃ  ใ…‹ใ…‹ใ…‹

 

foreach๋Š” ๋ฐฐ์—ด์˜ ๊ฐ๊ฐ์— ๋Œ€ํ•ด ์•„๋ž˜ ์ฝ”๋“œ๋ฅผ ์‹คํ–‰ํ•˜๋Š” ๋ฌธ๋ฒ• ์ž…๋‹ˆ๋‹ค.

element ๋ณ€์ˆ˜์— document.write()๋ฅผ ์‹คํ–‰ํ•  ๋•Œ ๋งˆ๋‹ค ๋ฐฐ์—ด์˜ ๊ฐ’์ด ํ•˜๋‚˜์”ฉ ๋“ค์–ด๊ฐ‘๋‹ˆ๋‹ค.

(์ฒ˜์Œ์—” Java๊ฐ€ ๋“ค์–ด๊ฐ”๋‹ค๊ฐ€, ์ถœ๋ ฅํ•˜๊ณ  ๋‚˜๋ฉด C/C++์ด ๋“ค์–ด๊ฐ€๋Š” ๊ฒƒ)

 

์™€ ์ง„์งœ ์ˆ˜๊ณ ํ•˜์…จ์Šต๋‹ˆ๋‹ค;; ํ€ด์ฆˆ ํ‘ธ์„ธ์š”(?)

 

๐ŸŽ Step 4. ์˜ค๋Š˜์˜ ๋งˆ์ง€๋ง‰ ํ€ด์ฆˆ!

1. ์ˆซ์ž ํ•˜๋‚˜๋ฅผ ์ž…๋ ฅ ๋ฐ›๊ณ , ๊ทธ ๊ฐ’์— ๋”ฐ๋ผ for๋ฌธ์œผ๋กœ ์ธ๋ฑ์Šค ๋ฒˆํ˜ธ๋ฅผ ์ถœ๋ ฅํ•˜์„ธ์š”

2. ๊ฐ’์„ ๋‘ ๊ฐœ ์ž…๋ ฅ๋ฐ›๊ณ , ๊ทธ ๊ฐ’์„ ์„œ๋กœ ๋บ€ ๊ฐ’์ด 0 ์ดํ•˜๋ผ๋ฉด a๋ฅผ, -5 ์ดํ•˜๋ผ๋ฉด b๋ฅผ, ์•„๋‹ˆ๋ฉด c๋ฅผ ์ถœ๋ ฅํ•˜์„ธ์š”

3. ๋ฐฐ์—ด์„ ํ•˜๋‚˜ ๋งŒ๋“ค๊ณ , ์ž…๋ ฅ๋ฐ›์€ ๊ฐ’์„ ๋ฐฐ์—ด์˜ ๋งˆ์ง€๋ง‰์— ์ถ”๊ฐ€ํ•˜์„ธ์š”.

 

์˜ค๋Š˜ ํ€ด์ฆˆ์˜ ์ •๋‹ต์€ ๋‹ค์Œ ๊ฐ•์˜์—์„œ ๊ณต๊ฐœํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค. 

์ˆ˜๊ณ ํ•˜์…จ์Šต๋‹ˆ๋‹ค!

 

 

์ฑ„ํŒ…์œผ๋กœ ์‚ฌ์šฉ์ž๊ฐ€ ์›ํ•˜๋Š” ๋งž์ถคํ˜• ์„œ๋ฒ„ ํ˜ธ์ŠคํŒ…์„

์ด์šฉ ํ•˜์‹ค์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.


ํƒ€ ์—…์ฒด ๋ณด๋‹ค ๋”์šฑ ๋›ฐ์–ด๋‚œ ์„ฑ๋Šฅ ๊ณผ ๊ฐ€์„ฑ๋น„ ์™€

ํ•ฉ๋ฆฌ์ ์ธ ๊ฐ€๊ฒฉ์œผ๋กœ RTGROUP ๋””๋„์Šค ์ด์šฉ ํ•˜์‹œ๊ธธ ๋ฐ”๋ž๋‹ˆ๋‹ค.

rtg.kr

'Web > Node.JS' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€

[HTUN] Chapter 2. JavaScript ๊ธฐ์ดˆ (1)  (0) 2020.06.24
[HTUN] Chapter 1. ๊ธฐ์กด ๊ฐ•์ขŒ๋ฅผ ๊ฐœํŽธํ•ฉ๋‹ˆ๋‹ค.  (0) 2020.06.24

๋Œ“๊ธ€