ํด๋น ํฌ์คํ
์ "์ํ์ฝ๋ฉ"์ ์ด๊ณ ์ ๋์ ๊ฐ์๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ์ฌ๋ฆฐ ๊ฒ์๊ธ ์
๋๋ค.
์์
์ ์ธ ์ฉ๋๊ฐ ์๋, ๊ฐ์ธ ๊ณต๋ถ ์ ๋ฆฌ ๋ชฉ์ ์ผ๋ก ์ฌ๋ฆฌ๋ ๊ธ์์ ๋ฏธ๋ฆฌ ์๋ฆฝ๋๋ค.
๋ณ์(Variable)๋ (๋ฌธ์๋ ์ซ์ ๊ฐ์) ๊ฐ์ ๋ด๋ ์ปจํ
์ด๋๋ก ๊ฐ์ ์ ์งํ ํ์๊ฐ ์์ ๋ ์ฌ์ฉํ๋ค.
์ฌ๊ธฐ์ ๋ด๊ฒจ์ง ๊ฐ์ ๋ค๋ฅธ ๊ฐ์ผ๋ก ๋ฐ๊ฟ ์ ์๋ค.
๋ณ์๋ ๋ง์น (์ฌ๋์ด ์ฐ๋ ์ธ์ด์ธ) ์์ฐ์ด์์ ๋๋ช
์ฌ์ ๋น์ทํ ์ญํ ์ ํ๋ค.
๋ณ์์ ์ ์ธ
JavaScript์์ ๋ณ์๋ var๋ก ์์ํ๋ค.
var์ ๋ณ์๋ฅผ ์ ์ธํ๊ฒ ๋ค๋ ๊ฒ์ ์๋ฏธํ๋ค.
var์ ์๋ต ํ ์๋ ์์ง๋ง ์ด๊ฒ์ ์ ํจ๋ฒ์๋ผ๋ ๊ฒ์ ์ํฅ์ ๋ฏธ์น๋ค.
๊ทธ๋ ๊ธฐ ๋๋ฌธ์ var์ ์๋ฏธ๋ฅผ ๋ช
ํํ๊ฒ ์ดํดํ๊ธฐ ์ ๊น์ง๋ var๋ฅผ ์ฌ์ฉํ๋ ๊ฒ์ด ๊ถ์ฅ๋๋ค.
์ ํจ๋ฒ์์ ๋ํด์๋ ๋ค์์ ์ดํด๋ณผ ๊ฒ์ด๋ค.
๋ณ์์ ์ด๋ฆ์ $, _, ํน์ ํน์ ๋ฌธ์๋ฅผ ์ ์ธํ ๋ชจ๋ ๋ฌธ์๋ก ์์ํ ์ ์๋ค. ๋ค์ ์์ ๋ ๋ณ์์ ๊ฐ์ ๋์
ํ ์์ ๋ค.
<script>
var a = 1;
alert(a + 1); //2
var b = 3;
alert(b + 3); //6
</script>
/*
์ฃผ์
//์ ์ฃผ์(comment)์ผ๋ก ์ฝ๋์ ๋ถ๊ฐ์ ์ธ ์ค๋ช
์ ์ฐ๊ฑฐ๋ ์ฌ์ฉํ์ง ์๋ ์ฝ๋๋ฅผ ๋นํ์ฑํ์ํค๊ธฐ ์ํด์ ์ฌ์ฉํ๋ค.
//๋ค์ ๋ฐ๋ผ์ค๋ ๋ด์ฉ์ ํด์๋์ง ์๋๋ค.
์ธ๋ฏธ์ฝ๋ก
์ธ๋ฏธ์ฝ๋ก (;)์ ํ๋์ ๊ตฌ๋ฌธ์ด ๋๋ฌ์์ ๋ช
์์ ์ผ๋ก ๋ํ๋ด๋ ๊ธฐํธ๋ค.
๋ค์์ฒ๋ผ ํ์ค์ ์ฌ๋ฌ๊ตฌ๋ฌธ์ ์ฌ์ฉํ๊ณ ์ถ์ ๋ ์ธ๋ฏธ์ฝ๋ก ์ด ์ ์ฉํ๋ค.
a = 1; alert(a+1);
JavaScript์์๋ ์ธ๋ฏธ์ฝ๋ก ์ ์๋ตํ ์ ์๋๋ฐ, ์ด ๊ฒฝ์ฐ ์ค๋ฐ๊ฟ์ ๋ช
๋ น์ ๋์ผ๋ก ๊ฐ์ฃผํ๊ฒ ๋๋ค.
*/
์ ์์๋ฅผ ํฌ๋กฌ ๋ธ๋ผ์ฐ์ ์์ ์ค์ตํด๋ณธ๋ค๋ฉด
๋ค์๊ณผ ๊ฐ์ ๊ฒฐ๊ณผ๊ฐ ์ถ๋ ฅ๋๋ค.
a ๋ ๋ณ์์ด๊ธฐ ๋๋ฌธ์ ๊ฐ์ ๋ด์ ์ ์๋ค.
๊ฐ์ ๋ด๋ ๊ทธ๋ฆ์ ์ด๋ ํ ๊ฐ์ด ๋ด๊ธฐ๋ ์๊ด์ด ์๊ธฐ ๋๋ฌธ์,
๊ฐ์ ๋ณ๊ฒฝํ๋ฉด ๋ณ๊ฒฝ๋ ๊ฐ์ด ์ ์ฅ๋๋ค.
๋ณ์์์๋ ์ด๋ ํ ํํ์ ๋ฐ์ดํฐ๋ ๋ด๊ธธ ์ ์๋ค.
์ซ์๋ฟ ์๋๋ผ ๋ฌธ์๋ ๊ฐ๋ฅํ๋ค.
๋ฌธ์๋ฅผ ๋ณ์์์ ๋ฃ์ ์์ ๋ฅผ ์ดํด๋ณด์.
<script>
var first = 'coding';
alert(first + 'everybody');
</script>
//์ฒ์ ๋ณ์๋ฅผ ์ ์ธํ ๋๋ง var๋ฅผ ์จ์ ์ ์ธ ํด์ฃผ๊ณ , ์ดํ์ ์จ์ฃผ์ง ์์๋ ๋๋ค.
์์ ๊ฐ์ด ๋ฌธ์๋ฅผ ๋ณ์์ ๋ฃ์ด ์ฐ์ฐํ ์๋ ์๋ค.
Q. ๊ทธ๋ ๋ค๋ฉด ๋ณ์๋ ๋๋์ฒด ์ ์ฐ๋ ๊ฑธ๊น?
A. ๋ณ์๋ ์ฝ๋์ ์ฌํ์ฉ์ฑ์ ๋์ฌ์ค๋ค. (์ข์ ์ฝ๋๋ฅผ ๋ง๋ค๊ธฐ ์ํด ๊ฐ์ฅ ์ค์ํ ํค์๋์ด๋ค.)
์๋ฅผ๋ค์ด์ 100์ 10์ ๋ํ๊ณ , 10์ ๋๋ ํ์ ๋ค์ 10์ ๋นผ๊ณ ๊ฑฐ๊ธฐ์ 10์ ๊ณฑํด์ผ ํ๋ค๊ณ ์น์.
๊ทธ๋ฆฌ๊ณ ๊ฐ ๋จ๊ณ๋ง๋ค ๊ทธ ๊ฒฐ๊ณผ๋ฅผ ์ถ๋ ฅํด์ผ ํ๋ค๋ฉด ์ฝ๋๋ ์๋์ ๊ฐ์ ๊ฒ์ด๋ค.
<script>
alert(100+10);
alert((100+10)/10);
alert(((100+10)/10)-10);
alert((((100+10)/10)-10)*10);
</script>
ํ์ง๋ง ๊ณ์ฐํด์ผ ํ ๊ฐ์ด 100์ด ์๋๋ผ 1000์ผ๋ก ๋ฐ๋๊ฒ ๋๋ค๋ฉด
์์ ์ฝ๋๋ฅผ ๋ชจ๋ 100 --> 1000 ์ผ๋ก ์์ ํด์ผ ํ ๊ฒ์ด๋ค.
์ด๋ ๊ฒ ๋๋ฉด ์ฝ๋์ ํจ์จ์ฑ์ด ๋จ์ด์ง๊ฒ ๋๋ค.
๋ง์ฝ ์ด ์ฝ๋๋ฅผ ๋ณ์๋ฅผ ์ฌ์ฉํ๋ค๋ฉด??
<script>
a = 100;
a = a + 10;
alert(a);
a = a / 10;
alert(a);
a = a - 10;
alert(a);
a = a * 10;
alert(a);
</script>
์ ์ฝ๋์ ๊ฐ์ด ๋ณ์๋ก a์ ๊ฐ์ 100์ผ๋ก ์ง์ ํด ์ฃผ์๋๋ผ๋ฉด
์ฒซ๋ฒ์งธ ์ค์ 100์ ๋ค๋ฅธ ์ซ์๋ก ๋ฐ๊พธ๋ฉด ๋๋จธ์ง ๋ก์ง์ ๋์
๋๋ ๋ณ์์ ๊ฐ์ด ๋ชจ๋ ๋ฐ๋๊ฒ ๋๋ค!
์์ ํด์ผ ํ ์ฝ๋๊ฐ ์ ๋ค๋ ๊ฒ์ ๊ทธ๋งํผ ํด์ผ ํ ์ผ์ด ์ค์ด๋ ๋ค๋ ์๋ฏธ๊ณ , ๊ทธ ๊ณผ์ ์์ ๋ฒ๊ทธ๊ฐ ๋ฐ์ํ ๊ฐ๋ฅ์ฑ์ ๋ฎ์ถ ์ ์๋ค. ๋ณ์์ ํจ์ฉ์ ๋ค์์ ๋ฐฐ์ฐ๊ฒ ๋ ๋ฐ๋ณต๋ฌธ, ์กฐ๊ฑด๋ฌธ, ํจ์์ ๊ฒฐํฉ๋๋ฉด ๋์ฑ ๋ ์ค์ํด์ง๋ค.