๐ JavaScript์ ์ฝ๋ฉ ๋ฐฉ๋ฒ
Javascript๋ html ๋ฌธ์ ์์์ ์๋ํฉ๋๋ค.
์ฐ์ htun1.html ์ด๋ผ๋ ํ์ผ์ ๋ง๋ค์ด ์ฃผ๊ฒ ์ต๋๋ค.
htun1.html
<!DOCTYPE html>
<html lang="ko">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>How To Use JavaScript? 1</title>
</head>
<body>
<script>
</script>
</body>
</html>
๋ค ์ด๋ ๊ฒ html ๊ธฐ๋ณธ ๋ฌธ์๋ฅผ ์์ฑํ๊ณ , javascript ๋ฌธ๋ฒ์ ์ฌ์ฉํ๋ ๋ฐฉ๋ฒ์,
์ ์ฝ๋์ฒ๋ผ script ํ๊ทธ ์์ ์์ฑํ์๋ฉด ๋ฉ๋๋ค.
์ด์ ๋ถํฐ ๋ชจ๋ javascript ๋ฌธ๋ฒ์ ์ ์ฝ๋์ <script> ... </script> ์์ ์์ฑํ์๋ฉด ๋ฉ๋๋ค.
(html ํ๊ทธ๋ <script> ๋ก ์ด๋ฉด </script> ๋ก ๋ซ์์ผ ํจ)
๐ Step 1. ์ถ๋ ฅ๋ฌธ
Javascript์๋ ๋ฌธ์๋ฅผ ์ฌ์ฉ์์๊ฒ ๋ณด์ฌ์ค ์ ์๋ ์ฌ๋ฌ๊ฐ์ง ๋ฐฉ๋ฒ์ด ์์ต๋๋ค.
์ฐ์ ์๋์ ์ฝ๋๋ฅผ script ํ๊ทธ ์์ ์์ฑํด ๋ด ์๋ค.
alert("Hello JavaScript World!");
console.log("Hello JavaScript Wolrd?");
document.write("Hello JavaScript World.");
์์ ๊ฐ์ด ์์ฑํ ํ, htun1.html ํ์ผ์ ์คํํด ๋ณด๋ฉด ์๋์ ๊ฐ์ ๊ฒฐ๊ณผ๊ฐ ๋์ต๋๋ค.
๋ค ์ ์ฌ์ง์ฒ๋ผ, ๋ ํน์๋ฌธ์๊ฐ '!' ์ธ๊ฒ๊ณผ '.' ์ธ๊ฒ ๋๊ฐ ๋์ต๋๋ค.
๊ทผ๋ฐ ๋น ์ง๊ฒ ์๋๊ฑฐ ๊ฐ์ฃ ? '?' ๋ฌธ์๊ฐ ์๋ ๋ฌธ์ฅ์ ์ด๋๋ฅผ ๋ด๋ ์ถ๋ ฅ๋์ง ์์์ต๋๋ค.
console.log() ํจ์๋ ์ฝ์์ ๋ฌธ์๋ฅผ ์ถ๋ ฅํ๋ ํจ์๋ก์,
f12 (๊ฐ๋ฐ์๋๊ตฌ)์ ๋ค์ด๊ฐ์ ์, console ํญ์ ๋ค์ด๊ฐ์๋ฉด ์์ํ๋ ๊ฒ ์ฒ๋ผ ๋ฌธ์ฅ์ด ์ถ๋ ฅ๋์ด ์์ต๋๋ค.
* alert() : ์๋ด์ฐฝ์ ๋์ฐ๋ ํจ์
* console.log() : ์ฝ์์ ๋ฌธ์๋ฅผ ์ถ๋ ฅํด์ฃผ๋ ํจ์ (f12, ๊ฐ๋ฐ์๋๊ตฌ)
* document.write() : HTML์ body ํ๊ทธ ๋ด์ ๋ฌธ์๋ฅผ ์ถ๋ ฅํด์ฃผ๋ ํจ์,
๐ญ Step One Quiz ๐ญ
- html์ body ํ๊ทธ ์์ 'A' ๋ฅผ ์ถ๋ ฅํ๊ณ , ์๋ด์ฐฝ์ 'b'๋ฅผ ์ถ๋ ฅํ๊ณ , ์ฝ์์ 'cdefg' ๋ฅผ ์ถ๋ ฅํ์ธ์
๐ Step 2. ์ ๋ ฅ๋ฌธ, ๋ณ์
์ ๋ ฅ๋ฌธ์ ์ฌ์ฉํ๋ฉด, ์๋ด์ฐฝ์์ ์ฌ์ฉ์๋ก๋ถํฐ ๊ฐ์ ์ ๋ ฅ๋ฐ์ ์ ์์ต๋๋ค.
๊ธฐ์กด ์ฝ๋๋ฅผ ์ง์ฐ๊ณ , ์๋์ ์ฝ๋๋ฅผ ์ ๋ ฅ ํด ๋ด ๋๋ค.
var num = prompt("์ซ์ ํ๋ ์
๋ ฅ");
document.write(num);
์ ์ฝ๋๋ฅผ ์คํํ๋ฉด ์๋์ ๊ฐ์ ๊ฒฐ๊ณผ๊ฐ ๋์ต๋๋ค.
๊ฐ์ด ์ค์ ๋ถ๋ค์ด ๊ณ์๊ฒ ์ง๋ง, ์ค๋ช ํด ๋ณด๊ฒ ์ต๋๋ค.
prompt()๋ ์ ๋ ฅ์ฐฝ์ด ํ์ ๋๊ณ , ๊ฐ์ ์ ๋ ฅ๋ฐ์ ์ ์๋ ์ฐฝ์ด ๋ํ๋ฉ๋๋ค.
์์ ๋ถ๋ var num = ๋ถ๋ถ์ num ์ด๋ผ๋ ๋ณ์๋ฅผ ์ ์ธํ์ฌ ์ ๋ ฅ๋ฐ์ ๊ฐ์ ๋ฃ์ด๋๋๋ก ํ ๊ฒ ์ ๋๋ค.
document.write๋ฅผ ํ ๋์, ๋ฌธ์์ ๋ณ์๊ฐ์ ํจ๊ป ์ถ๋ ฅํ๋ ๋ฐฉ๋ฒ์ ๋ํด์ ์์๋ด ์๋ค.
๋งค์ฐ ์ฝ์ต๋๋ค.
var num = prompt("์ซ์ ํ๋ ์
๋ ฅ");
document.write(`๊ทธ๊ฐ ์
๋ ฅํ ์ซ์๋ ${num}`);
์์ฒ๋ผ ์ถ๋ ฅ์ ` ` ๋ฅผ ๊ฐ์ธ์ฃผ์๊ณ , ์ถ๋ ฅํ ๋ณ์๋ฅผ ${ } ์ ๊ฐ์ธ์ฃผ์๋ฉด ๋ฉ๋๋ค.
๋ณ์์ ์ข ๋ฅ๋ const, let, var ๊ฐ ์์ต๋๋ค.
์ด๋ค์ ์ฐจ์ด๋ฅผ ๊ฐ๋จํ ์ค์ต์ผ๋ก ์์๋ณด๊ฒ ์ต๋๋ค.
var name = 'Hello ';
alert(name);
var name = 'javascript ';
alert(name);
var name = 'World ';
alert(name);
์์ฒ๋ผ var๋ก ๋ณ์๋ฅผ ๋ง๋ค๊ณ , ๊ทธ ์์ ๊ฐ๊ฐ์ ๊ฐ์ ๋ฃ์์ ๋,
์ ์์ ์ผ๋ก ๊ฐ์ด ์ถ๋ ฅ๋๋ ๊ฒ์ ๋ณผ ์ ์์ต๋๋ค.
์์ง๊น์ง๋ ์ฐจ์ด๋ฅผ ์ ๋ชจ๋ฅด๊ฒ ์ฃ ? let์ ํตํ ์ค์ต์ ํด๋ด ์๋ค.
// Uncaught SyntaxError: Identifier 'name' has already been declared
let name = 'Hello ';
alert(name);
let name = 'javascript ';
alert(name);
์ฃผ์์ ๊ตฌ์ง ์์ฑํ์ง ์์ผ์ ๋ ๋ฉ๋๋ค๋ง,
์ด์จ๋ ์ ๋ฐ ์์ผ๋ก ์์ฑํ๊ฒ ๋๋ฉด ์ค๋ฅ๊ฐ ๋๊ฒ ๋ฉ๋๋ค.
๋ฌด์จ ์ฐจ์ด์ธ์ง ๊ฐ์ด ์ค์๋์? ์ค๋ฅ ๋ฉ์ธ์ง๋ฅผ ํด์ํ๋ฉด "name์ ์ด๋ฏธ ์ ์ธ๋์๋ค" ์ ๋๋ค.
๋ค. var์ ์ฌ์ ์ธ์ด ๊ฐ๋ฅํ ๋ณ์์ ํ์์ด๊ณ ,
let์ ์ฌ์ ์ธ์ด ๋ถ๊ฐ๋ฅํ ํ์์ด๊ธฐ ๋๋ฌธ์ let a = 2; let a = 3; ์ ํ์์ผ๋ก ์์ฑํ ์ ์์ต๋๋ค.
๊ทธ๋ผ ์ด๋ป๊ฒ ํด์ผ ๋ง๋ ์ถ๋ ฅ์ผ๊น์?
let name = 'Hello ';
alert(name);
name = 'javascript ';
alert(name);
๋ค. let ์ด๋ผ๋ ํ์ ์ ์ฐ์ง ์์ผ๋ฉด ์ด๋ฏธ ์ ์ธ๋ ๋ณ์์ ๊ฐ๋ง ๋ฐ๊พผ๋ค๋ ์๋ฏธ๊ฐ ๋ฉ๋๋ค.
(์ฐธ๊ณ ๋ก var ํ์ ๋ ์์ ๊ฐ์ ๋ฐฉ๋ฒ์ผ๋ก ์ฌ์ฉํ ์ ์์ต๋๋ค)
๊ทธ๋ฌ๋ฉด... const๋ ๋๋์ฒด ๋ญ๊น์?
์ฐ์ ๋ ์ฝ๋๋ฅผ ์์ฑํด ๋ด ์๋ค.
const name = 'hello';
console.log(name);
// Uncaught SyntaxError: Identifier 'name' has already been declared
const name = 'javascript';
console.log(name);
//Uncaught TypeError: Assignment to constant variable.
name = 'wolrd';
console.log(name);
๋ค. ๊ฐ์ด ์ค์ ๋ถ๋ ๊ณ์๊ฒ ์ง๋ง, const ํ์ ์ let ํ์ ๊ณผ ๋ค๋ฅด๊ฒ
์ฌ์ ์ธ (๊ฐ์ ๋ณ์๋ฅผ ๋ค์ ์ ์ธํ๋ ๊ฒ)๊ณผ ์ฌํ ๋น (๋ณ์์ ๊ฐ์ ๋ค์ ๋ฃ๋ ๊ฒ)์ ๋ชจ๋ ํ ์ ์์ต๋๋ค.
๊ทธ๋ฅ ํ๋์ ๊ณ ์ ๋ ์์์ ๊ฐ๋ ์ด๋ผ ๋ณด์๋ฉด ๋๊ฒ ์ต๋๋ค.
์ด์จ๋ ๋ค์ ๋ณธ๋ก ์ผ๋ก ๋์์์, var num = prompt(); ๋ผ๋ ๊ฒ์,
์ฌ์ฉ์๋ก๋ถํฐ ๊ฐ์ ์ ๋ ฅ๋ฐ์์ num ์ด๋ผ๋ ๋ณ์์ ์ ์ฅํ๊ฒ ๋ค๋ ์๋ฏธ ์ ๋๋ค.
์ด์ prompt์ ๋น์ทํ๋ฉด์๋ ์์ ๋ค๋ฅธ confirm ์ด๋ผ๋ ๊ฒ์ ๋ฐฐ์๋ณด๊ฒ ์ต๋๋ค.
์๋ ์ฝ๋๋ฅผ ์ค์ตํด ๋ณด๊ฒ ์ต๋๋ค.
var yesorno = confirm('Are You Ready?');
alert(yesorno);
์ ์ฝ๋๋ฅผ ์คํํ์ ๋, Are You Ready? ๋ผ๊ณ ๋จ๋ฉฐ, ์ / ์๋์ค๋ฅผ ๋๋ฅผ ๊ฒ์ ์๊ตฌํฉ๋๋ค.
๋ค. confirm ํจ์๋ ์ฌ์ฉ์๋ก๋ถํฐ ์ / ์๋์ค ๋ฅผ ์๊ตฌํ์ฌ
์ ๋ true, ์๋์ค๋ false ๋ก ์ฒ๋ฆฌํ์ฌ ๊ฐ์ ๋ฐํํ๋ ํจ์์ ๋๋ค.
์ ํ์ง๋ฅผ ์๊ตฌํ ๋ ์ข์ ํจ์๊ฐ ๋๊ฒ ์ต๋๋ค.
๐ Step 3. ์ค๋์ ์ต์ข ํด์ฆ!
1. name ๋ณ์๋ฅผ let ํ์ ์ผ๋ก ์ ์ธํ์ฌ ์ฌ์ฉ์๋ก๋ถํฐ ์ด๋ฆ์ ์ ๋ ฅ๋ฐ์ ์ ์ฅํฉ๋๋ค.
2. age ๋ณ์๋ฅผ var ํ์ ์ผ๋ก ์ ์ธํ์ฌ ์ฌ์ฉ์๋ก๋ถํฐ ๋์ด๋ฅผ ์ ๋ ฅ๋ฐ์ ์ ์ฅํฉ๋๋ค.
3. isstd ๋ณ์๋ฅผ const ํ์ ์ผ๋ก ์ ์ธํ์ฌ ์ฌ์ฉ์๋ก๋ถํฐ ํ์์ ๋๊น? ๋ฅผ ์/์๋์ค ๋ก ์ ๋ ฅ๋ฐ์ ์ ์ฅํฉ๋๋ค.
4. ์ต์ข ์ ์ผ๋ก ์ ๋ ฅ๋ ๊ฐ์ html์ bodyํ๊ทธ ์์ ๋ชจ๋ ์ถ๋ ฅํฉ๋๋ค.
--> ๊ฐ๊ฐ์ ํญ๋ชฉ ๋ง์ง๋ง์ <br /> ์ ๋ฃ์ ๊ฒ.
let name = prompt("๋น์ ์ ๋์ด๋?");
var age = prompt("๋น์ ์ ๋์ด๋?");
const isstd = confirm("ํ์์
๋๊น?");
document.write(`๊ทธ์ ์ด๋ฆ์ ${name} ์ด๋ค. <br />`);
document.write(`๊ทธ์ ๋์ด๋ ${age} ์ด๋ค. <br />`);
document.write(`๊ทธ๊ฐ ํ์์ธ๊ฐ? : ${isstd} <br />`);
์ด๋ฒ ๊ฐ์ข ์ค์ตํ๋๋ผ๊ณ ์๊ณ ํ์ จ์ต๋๋ค.
๋ค์ ๊ฐ์์์ ๋ฐ๋ณต๋ฌธ๊ณผ ์กฐ๊ฑด๋ฌธ, ๋ฐฐ์ด์ ๋ํด์ ์์๋ณด๊ฒ ์ต๋๋ค.
์ข์ ํธ์คํ ์ด ์์ด์ ์ถ์ฒ๋๋ฆฝ๋๋ค.
์ฑํ ์ผ๋ก ์ฌ์ฉ์๊ฐ ์ํ๋ ๋ง์ถคํ ์๋ฒ ํธ์คํ ์
์ด์ฉ ํ์ค์ ์์ต๋๋ค.
ํ ์
์ฒด ๋ณด๋ค ๋์ฑ ๋ฐ์ด๋ ์ฑ๋ฅ ๊ณผ ๊ฐ์ฑ๋น ์
ํฉ๋ฆฌ์ ์ธ ๊ฐ๊ฒฉ์ผ๋ก RTGROUP ๋๋์ค ์ด์ฉ ํ์๊ธธ ๋ฐ๋๋๋ค.
'Web > Node.JS' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[HTUN] Chapter 2. JavaScript ๊ธฐ์ด (2) (2) | 2020.06.25 |
---|---|
[HTUN] Chapter 1. ๊ธฐ์กด ๊ฐ์ข๋ฅผ ๊ฐํธํฉ๋๋ค. (0) | 2020.06.24 |
๋๊ธ