CodeGym /ํ–‰๋™ /Frontend SELF KO /JavaScript ์†Œ๊ฐœ

JavaScript ์†Œ๊ฐœ

Frontend SELF KO
๋ ˆ๋ฒจ 2 , ๋ ˆ์Šจ 5
์‚ฌ์šฉ ๊ฐ€๋Šฅ

1. ํƒœ๊ทธ <script>

HTML์„ ์ž์„ธํžˆ ๋ฐฐ์šฐ๊ธฐ ์ „์—, ํ•œ ๊ฐ€์ง€ ๋ฉ‹์ง„ ๊ฒƒ์„ ์†Œ๊ฐœํ•˜๊ณ  ์‹ถ์–ด โ€” JavaScript๋ผ๋Š” ์–ธ์–ด์•ผ.

JavaScript๋Š” ๊ฐ•๋ ฅํ•œ ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์–ธ์–ด๋กœ, ๋™์ ์ด๊ณ  ์ธํ„ฐ๋ž™ํ‹ฐ๋ธŒํ•œ ์›นํŽ˜์ด์ง€๋ฅผ ๋งŒ๋“ค ๋•Œ ์‚ฌ์šฉ๋ผ. ์‚ฌ์šฉ์ž ์•ก์…˜์— ๋ฐ˜์‘ํ•˜๊ณ , ์›น ํŽ˜์ด์ง€ ๋‚ด์šฉ์„ ๋ณ€๊ฒฝํ•˜๊ณ , ์„œ๋ฒ„์™€ ์ƒํ˜ธ์ž‘์šฉํ•˜๊ณ  ๋“ฑ๋“ฑ, ์‚ฌ์šฉ์ž ๊ฒฝํ—˜์„ ํ–ฅ์ƒ์‹œํ‚ค๋Š” ๋ฐฉ๋ฒ•์ด ์•„์ฃผ ๋งŽ์•„.

์ง€๊ธˆ์€ JavaScript๋ฅผ ๊ณต๋ถ€ํ•˜์ง„ ์•Š์„ ๊ฑด๋ฐ, ๊ฐ„ํ˜น ์˜ˆ์ œ์—์„œ ์‚ฌ์šฉํ•˜๊ฒŒ ๋  ๊ฑฐ์•ผ. ๊ทธ๋ž˜์„œ ์–ด๋–ป๊ฒŒ HTML ๋ฌธ์„œ์— JavaScript๋ฅผ ์‚ฝ์ž…ํ•˜๋Š”์ง€ ์•Œ๋ ค์ค„๊ฒŒ.

<script> ํƒœ๊ทธ๋Š” HTML ๋ฌธ์„œ์— JavaScript ์ฝ”๋“œ๋ฅผ ์‚ฝ์ž…ํ•  ๋•Œ ์‚ฌ์šฉํ•ด.

CSS+HTML+JavaScript
      
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>JavaScript ์†Œ๊ฐœ</title>
</head>
<body>
    <h1>๋‚ด ์›น์‚ฌ์ดํŠธ์— ์˜จ๊ฑธ ํ™˜์˜ํ•ด!</h1>
    <script>
        // ์—ฌ๊ธฐ์— JavaScript ์ฝ”๋“œ๋ฅผ ์ž‘์„ฑํ•ด๋ด alert('์•ˆ๋…•, ์„ธ์ƒ!');
    </script>
</body>
</html>
      
    

์ด ์˜ˆ์ œ์—์„œ๋Š” <script> ํƒœ๊ทธ๋ฅผ ์‚ฌ์šฉํ•ด์„œ ๊ฐ„๋‹จํ•œ JavaScript ์ฝ”๋“œ๋ฅผ ์‚ฝ์ž…ํ–ˆ์–ด. ๊ทธ ์ฝ”๋“œ๋Š” ์‚ฌ์šฉ์ž์—๊ฒŒ "์•ˆ๋…•, ์„ธ์ƒ!" ๋ฉ”์‹œ์ง€๋ฅผ ๋ณด์—ฌ์ฃผ๋Š” ํŒ์—…์ฐฝ์„ ๋„์›Œ.

2. ์Šคํฌ๋ฆฝํŠธ ์—ฐ๊ฒฐํ•˜๊ธฐ

๊ฐ€๋”์€ JavaScript ์ฝ”๋“œ๋ฅผ ๋ณ„๋„์˜ ํŒŒ์ผ์— ์ €์žฅํ•˜๋Š” ๊ฒŒ ๋” ๋‚˜์„ ๋•Œ๊ฐ€ ์žˆ์–ด. ์ด๋ ‡๊ฒŒ ํ•˜๋ฉด ์ฝ”๋“œ ๊ด€๋ฆฌ๋ฅผ ๋” ์‰ฝ๊ฒŒ ํ•  ์ˆ˜ ์žˆ๊ณ , ์ฝ”๋“œ ์žฌ์‚ฌ์šฉ๋„ ๊ฐ€๋Šฅํ•ด์ ธ. ์ด๋Ÿฐ JavaScript ํŒŒ์ผ์„ ์—ฐ๊ฒฐํ•˜๋ ค๋ฉด ๋งˆ์ฐฌ๊ฐ€์ง€๋กœ <script> ํƒœ๊ทธ๋ฅผ ์‚ฌ์šฉํ•˜๊ณ , src ์†์„ฑ์œผ๋กœ JavaScript ํŒŒ์ผ ์ด๋ฆ„์„ ์ง€์ •ํ•˜๋ฉด ๋ผ.

์™ธ๋ถ€ JavaScript ํŒŒ์ผ ์—ฐ๊ฒฐํ•˜๊ธฐ:

HTML
      
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>JavaScript ์†Œ๊ฐœ</title>
    <script src="script.js" defer></script>
</head>
<body>
    <h1>๋‚ด ์›น์‚ฌ์ดํŠธ์— ์˜จ๊ฑธ ํ™˜์˜ํ•ด!</h1>
</body>
</html>
      
    

์ด HTML ํŒŒ์ผ์€ ๋ธŒ๋ผ์šฐ์ €์— "script.js"๋ผ๋Š” JavaScript ํŒŒ์ผ์„ ์—ฐ๊ฒฐํ•˜๋ผ๊ณ  ์š”์ฒญํ•ด. ์ด ํŒŒ์ผ์€ ์ด์ „ ์˜ˆ์ œ์™€ ๊ฐ™์€ ์ฝ”๋“œ๋ฅผ ํฌํ•จํ•  ์ˆ˜ ์žˆ์–ด:

JavaScript
      
//script.js:
// ์—ฌ๊ธฐ์— JavaScript ์ฝ”๋“œ๋ฅผ ์ž‘์„ฑํ•ด๋ด
alert('์•ˆ๋…•, ์„ธ์ƒ!'); 
      
    

defer ์†์„ฑ์€ ๋ธŒ๋ผ์šฐ์ €์— HTML ๋ฌธ์„œ๊ฐ€ ์™„์ „ํžˆ ๋กœ๋“œ๋˜๊ณ  ํ‘œ์‹œ๋œ ๋’ค ์Šคํฌ๋ฆฝํŠธ๋ฅผ ์‹คํ–‰ํ•˜๋ผ๊ณ  ์•Œ๋ ค์ค˜.

3. ์ธ๋ผ์ธ ์ฝ”๋“œ

์šฐ๋ฆฌ๊ฐ€ style ์†์„ฑ์„ ์‚ฌ์šฉํ•ด์„œ CSS ์Šคํƒ€์ผ์„ ์š”์†Œ์— ๋ฐ”๋กœ ์ž‘์„ฑํ–ˆ๋˜ ๊ฑฐ ๊ธฐ์–ต๋‚˜?

HTML
      
<p style="color:red"> ๋นจ๊ฐ•์ƒ‰</p>
      
    

JavaScript ์ฝ”๋“œ๋„ ๋˜‘๊ฐ™์ด ์“ธ ์ˆ˜ ์žˆ์–ด.

์˜ˆ๋ฅผ ๋“ค์–ด, ์‚ฌ์šฉ์ž๊ฐ€ ์š”์†Œ๋ฅผ ํด๋ฆญํ–ˆ์„ ๋•Œ ํ•ด๋‹น ์š”์†Œ์˜ ์ƒ‰์ƒ์„ ํŒŒ๋ž€์ƒ‰์œผ๋กœ ๋ฐ”๊พธ๊ณ  ์‹ถ๋‹ค๋ฉด, ๋‹ค์Œ๊ณผ ๊ฐ™์€ ์ฝ”๋“œ๋ฅผ ์ž‘์„ฑํ•ด์•ผ ํ•ด:

HTML
      
<p style="color:red" onclick="this.style.color = 'blue';">๋นจ๊ฐ•์ƒ‰</p>
      
    

์—ฌ๊ธฐ ๋…น์ƒ‰์œผ๋กœ ํ‘œ์‹œ๋œ ๋ถ€๋ถ„์ด JavaScript ์ฝ”๋“œ์•ผ. ์‚ฌ์šฉ์ž๊ฐ€ <p> ์š”์†Œ๋ฅผ ํด๋ฆญํ•˜๋ฉด ์‹คํ–‰๋ผ. ์ •๋ง ๊ฐ„๋‹จํ•˜์ง€?

  • onclick: HTML ์†์„ฑ์œผ๋กœ, ์š”์†Œ ํด๋ฆญ ์‹œ ์‹คํ–‰๋˜๋Š” ํ•จ์ˆ˜๋ฅผ ์ง€์ •ํ•ด.
  • this: ํด๋ฆญ๋œ ์š”์†Œ๋ฅผ ์ฐธ์กฐํ•ด.
  • style.color: ์š”์†Œ์˜ ํ…์ŠคํŠธ ์ƒ‰์ƒ์„ ๋ณ€๊ฒฝํ•˜๋Š” CSS ์†์„ฑ์ด์•ผ.
์ฝ”๋ฉ˜ํŠธ
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION