Welcome To JAVASCRIPT

suliverยท2024๋…„ 2์›” 21์ผ

JAVASCRIPT

๋ชฉ๋ก ๋ณด๊ธฐ
1/4
post-thumbnail

๐Ÿ”JavaScript์ด๋ž€?

  • TML๊ณผ CSS๋กœ ๋งŒ๋“ค์–ด์ง„ ์›น ํŽ˜์ด์ง€์— ์ƒ๋™๊ฐ์„ ๋ถˆ์–ด๋„ฃ๊ธฐ ์œ„ํ•ด ๋งŒ๋“ค์–ด์ง„ ๊ฐ์ฒด๊ธฐ๋ฐ˜์˜ ์Šคํฌ๋ฆฝํŠธ ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์–ธ์–ด์ด๋‹ค.

  • ์Šคํฌ๋ฆฝํŠธ ์–ธ์–ด๋ž€ ์ด๋ฏธ ์กด์žฌํ•˜๋Š” ํ”„๋กœ๊ทธ๋žจ์„ ์ œ์–ดํ•˜๊ธฐ ์œ„ํ•ด ์‚ฌ์šฉ๋˜๋Š” ์–ธ์–ด๋ฅผ ๋งํ•œ๋‹ค.

  • HTML์ด ์›นํŽ˜์ด์ง€์˜ ๊ธฐ๋ณธ ๊ตฌ์กฐ, CSS์ด ์›นํŽ˜์ด์ง€์˜ ๋””์ž์ธ, JavaScript๊ฐ€ ์›นํŽ˜์ด์ง€์˜ ๋™์ž‘์„ ๋‹ด๋‹นํ•œ๋‹ค.

  • ๋”ฐ๋กœ C, C++์ฒ˜๋Ÿผ ์ปดํŒŒ์ผ ์—†์ด ํ•œ์ค„ ํ•œ์ค„ ํ•ด์„ํ•˜๋ฉฐ ๋ฐ”๋กœ ๋ช…๋ น์–ด๋ฅผ ์‹คํ–‰ํ•˜๋Š” ์ธํ„ฐํ”„๋ฆฌํ„ฐ ์–ธ์–ด HTML์˜ ํŠน์ • ์š”์†Œ๋ฅผ ์„ ํƒํ•˜์—ฌ ๋‹ค์–‘ํ•œ ์ด๋ฒคํŠธ ( ๋งˆ์šฐ์Šค ํด๋ฆญ, ํ‚ค๋ณด๋“œ ์ž…๋ ฅ ๋“ฑ )์— ๋”ฐ๋ผ ์–ด๋–ค ๋™์ž‘์„ ํ•˜๋„๋ก ๊ธฐ๋Šฅ์„ ๋„ฃ์„ ์ˆ˜ ์žˆ๋‹ค.

๐Ÿ”JavaScript ์‚ฌ์šฉ ๋ฐฉ๋ฒ•

1. ๋‚ด๋ถ€ ์Šคํฌ๋ฆฝํŠธ

  • ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ ์ฝ”๋“œ๋Š” ๏ผœscript๏ผžํƒœ๊ทธ๋ฅผ HTML๋ฌธ์„œ์•ˆ์— ๋„ฃ์–ด์„œ ์‚ฌ์šฉ ๊ฐ€๋Šฅํ•˜๋‹ค.

  • HTML๋ฌธ์„œ์˜ ์–ด๋А์œ„์น˜์—์„œ๋‚˜ ์‚ฌ์šฉ ๊ฐ€๋Šฅํ•œ๋ฐ ๋ณดํ†ต HTML๋ฌธ์„œ๊ฐ€ ์ „๋ถ€ ๋กœ๋“œ ๋˜๊ณ  ๋‚˜์„œ์ธ ๏ผœbody๏ผž ์•„๋ž˜์— ์‚ฌ์šฉํ•œ๋‹ค. ( ์ฃผ๋กœ ๊ฐ„๋‹จํ•œ ์Šคํฌ๋ฆฝํŠธ๋‚˜ ํ…Œ์ŠคํŠธ์šฉ์œผ๋กœ ์‚ฌ์šฉํ•œ๋‹ค. )

<!DOCTYPE html>
<html lang="ko">
<head>
  <meta charset="UTF-8">
  <meta http-equiv="X-UA-Compatible" content="IE=edge">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>Document</title>
</head>
<body>
  
</body>
<script>
	์ž๋ฐ” ์Šคํฌ๋ฆฝํŠธ ์ฝ”๋“œ
</script>
</html>

2. ์™ธ๋ถ€ ์Šคํฌ๋ฆฝํŠธ

  • ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ ํŒŒ์ผ์„ HTML๊ณผ ๋ณ„๊ฐœ์ธ .js ํ™•์žฅ์ž์˜ ํŒŒ์ผ๋กœ ์ €์žฅํ•œ ํ›„ ๋ถˆ๋Ÿฌ์˜ฌ ์ˆ˜ ์žˆ๋‹ค.

  • ์™ธ๋ถ€ ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ๋ฅผ ์‚ฌ์šฉํ•˜๋ ค๋ฉด ๏ผœscript๏ผž์˜ src ์†์„ฑ์œผ๋กœ HTML ๋ฌธ์„œ ์œ„์น˜์˜ ๊ธฐ์ค€ ํŒŒ์ผ ๊ฒฝ๋กœ๋ฅผ ์ž…๋ ฅํ•ด์ฃผ๋ฉด ๋œ๋‹ค.

<!DOCTYPE html>
<html lang="ko">
<head>
  <meta charset="UTF-8">
  <meta http-equiv="X-UA-Compatible" content="IE=edge">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>Document</title>
</head>
<body>
  
</body>
	<script src="./index.js"></script>
</html>

๐Ÿ” ๊ธฐ์ดˆ์ ์ธ ๋ฐ์ดํ„ฐ ํƒ€์ž…๋“ค

1. ์ˆซ์ž (Number)

1) ์ •์ˆ˜ (Integer)

1, 2, 3, 4, ..........

2) ์†Œ์ˆ˜ (float)

1.555, 2.3443323......, .........

2. ๋ฌธ์ž (String)

  • ์ฒ˜์Œ๋ถ€ํ„ฐ ๋๊นŒ์ง€ ๋ฌธ์ž(text)๋กœ ๊ตฌ์„ฑ๋˜์–ด ์žˆ๋‹ค๋Š” ์˜๋ฏธ๋ฅผ ๊ฐ€์ง€๊ณ  ์žˆ๋‹ค.
  • String ํƒ€์ž…์€ ""์„ ์ด์šฉํ•˜์—ฌ ์ž…๋ ฅํ•˜๊ณ , String ํƒ€์ž…์˜ ํ•ฉ์€ ๋‘๊ฐœ์˜ ๋ฌธ์ž๊ฐ€ ํ•˜๋‚˜๋กœ ํ•ฉ์ณ์„œ ์ถœ๋ ฅํ•œ๋‹ค.

    "Hello, " + "My name is ์ฒ ์ˆ˜"ใ€€ใ€€ใ€€ใ€€ใ€€ใ€€ใ€€ใ€€ใ€€ใ€€// "Hello, My name is ์ฒ ์ˆ˜"

3. Boolean

  • Boolean ๊ฐ’์œผ๋กœ true(์ฐธ), false(๊ฑฐ์ง“)์ด ์žˆ๋‹ค.
  • true โ‰  "true", false โ‰  "false"

4. null

  • (๊ฐ’์ด ์—†๋‹ค)๊ฐ€ ํ• ๋‹น๋œ๋‹ค. ์ฆ‰, ์ •์˜๋œ๋‹ค.
  • ๋ฐ•์Šค๋งŒ๋“ค๊ณ  ์•„๋ฌด๊ฒƒ๋„ ์•ˆ๋„ฃ๊ณ  ํฌ์žฅํ•œ๋‹ค.

5. undefined

  • ๋ณ€์ˆ˜๋Š” ์„ ์–ธํ–ˆ์ง€๋งŒ ๊ฐ’์„ ํ• ๋‹นํ•˜์ง€๋Š” ์•Š๋Š”๋‹ค.
  • ๋ฐ•์Šค๋งŒ ๋งŒ๋“ค์–ด ๋†“์€ ์ƒํƒœ์ด๋‹ค.

๐Ÿ” ๋ณ€์ˆ˜

  • ์šฐ๋ฆฌ๊ฐ€ ์ผ์ผ์ด ๊ฐ’์„ ๋„ฃ์–ด์ฃผ๊ธฐ์—๋Š” ์‹œ๊ฐ„์ด ๋งŽ์ด ์‚ฌ์šฉ๋œ๋‹ค.
    -> ๋ณ€์ˆ˜๋ฅผ ์ด์šฉํ•˜์—ฌ ์‹œ๊ฐ„์„ ์ค„์—ฌ๋ณด์ž.
  • ๋ณ€์ˆ˜ ์„ ์–ธ ๋ฐฉ๋ฒ•
    • const ๋ณ€์ˆ˜๋ช… = ๊ฐ’;
      console.log();ใ€€ใ€€// ์ฝ˜์†”์— ์ถœ๋ ฅ
const a = 10;
const b = 5;
const myName = "์ฒ ์ˆ˜";

console.log(a + b);		// 15 ์ถœ๋ ฅ
console.log(a - b);		// 5 ์ถœ๋ ฅ
console.log(a * b);		// 50 ์ถœ๋ ฅ
console.log(a / b);		// 2 ์ถœ๋ ฅ
console.log("Hello, " + myName);		// "Hello, ์ฒ ์ˆ˜" ์ถœ๋ ฅ
  • ๋ณ€์ˆ˜๋ช…์— ๊ณต๋ฐฑ์ด ํ•„์š”ํ•œ ๊ฒฝ์šฐ
    • Javascript์—์„œ๋Š” ๋ณ€์ˆ˜๋ช…์— ๊ณต๋ฐฑ์ด ํ•„์š”ํ•˜๋‹ค๋ฉด ๋‹ค์Œ ๋‹จ์–ด์˜ ์ฒซ ๋ฌธ์ž๋ฅผ ๋Œ€๋ฌธ์ž๋กœ ์‚ฌ์šฉํ•œ๋‹ค. ๊ทธ ๋ชจ์–‘์ด ๋‚™ํƒ€ ๋“ฑ ๋ชจ์–‘ ๊ฐ™์•„์„œ Camel Case๋ผ๊ณ  ํ•œ๋‹ค.

      veryLongVariableName

    • ํŒŒ์ด์ฌ์˜ ๊ฒฝ์šฐ ๊ณต๋ฐฑ ๋Œ€์‹ ์— "_"๋ฅผ ์‚ฌ์šฉํ•˜๊ณ  ๋ชจ๋“  ๋ฌธ์ž๋Š” ์†Œ๋ฌธ์ž๋กœ ์ž‘์„ฑํ•œ๋‹ค. ๊ทธ ๋ชจ์–‘์ด ๋ฑ€ ๊ฐ™์•„์„œ Snake Case๋ผ๊ณ  ํ•œ๋‹ค.

      very_long_variable_name

๐Ÿ” ๋ณ€์ˆ˜ let, const, var ์ฐจ์ด

1. let

  • ์žฌ์„ ์–ธ ๊ธˆ์ง€โŒ, ์žฌํ• ๋‹น ๊ฐ€๋Šฅโญ•
  • ํ•„์š”ํ•œ ๊ฒฝ์šฐ์—๋งŒ ์‚ฌ์šฉํ•œ๋‹ค.
let a = b;
let a = c;
// ์—๋Ÿฌ (์žฌ์„ ์–ธ ๊ธˆ์ง€)

let a = b;
a = c;
// ์žฌํ• ๋‹น ๊ฐ€๋Šฅ

2. const

  • ์žฌ์„ ์–ธ ๊ธˆ์ง€โŒ, ์žฌํ• ๋‹น ๊ธˆ์ง€โŒ
  • ์ฃผ๋กœ ์‚ฌ์šฉํ•œ๋‹ค.
let a = b;
let a = c;
// ์—๋Ÿฌ (์žฌ์„ ์–ธ ๊ธˆ์ง€)

let a = b;
a = c;
// ์—๋Ÿฌ (์žฌํ• ๋‹น ๊ธˆ์ง€)

3. var

  • ์žฌ์„ ์–ธ ๊ฐ€๋Šฅโญ•, ์žฌํ• ๋‹น ๊ฐ€๋Šฅโญ•
  • ์‹ค์ˆ˜๋กœ๊ฐ’์„ ์—…๋ฐ์ดํŠธํ•ด๋„ ์•Œ์•„์ฐจ๋ฆด ์ˆ˜ ์—†๋‹ค๋Š” ๋‹จ์ ์ด ์žˆ๋‹ค. (ํ‡ด๋ฌผ)
let a = b;
let a = c;
// ์žฌ์„ ์–ธ ๊ฐ€๋Šฅ

let a = b;
a = c;
// ์žฌํ• ๋‹น ๊ฐ€๋Šฅ

๐Ÿ” Array(๋ฐฐ์—ด)

  • 1๊ฐœ์˜ ๋ณ€์ˆ˜์— ์—ฌ๋Ÿฌ ๊ฐœ์˜ ๊ฐ’์„ ์ˆœ์ฐจ์ ์œผ๋กœ ์ €์žฅํ•  ๋•Œ ์‚ฌ์šฉํ•œ๋‹ค.
  • ์ˆœ์„œ๊ฐ€ ์žˆ๋Š” ๊ฐ’๋“ค์˜ ์ง‘ํ•ฉ์ด๋ฉฐ, ๊ฐ ๊ฐ’์€ ๋ฐฐ์—ด ๋‚ด์—์„œ ๊ณ ์œ ํ•œ ์œ„์น˜(์ธ๋ฑ์Šค)๋ฅผ ๊ฐ€์ง€๊ณ  ์žˆ๋‹ค.
  • boolean, string(๋ฌธ์ž) ,์ˆซ์ž ๋“ฑ ๋ฐ์ดํ„ฐ ์ •๋ ฌ ๊ฐ€๋Šฅํ•˜๋‹ค.
const daysOfWeek = ["์›”", "ํ™”", "์ˆ˜", "๋ชฉ", "๊ธˆ", "ํ† ", "์ผ"];

console.log(daysOfWeek[4]);		// "๊ธˆ" ์ถœ๋ ฅ -> ์ปดํ“จํ„ฐ๋Š” ์ˆซ์ž๋ฅผ 0๋ถ€ํ„ฐ ์„ธ๊ธฐ ๋•Œ๋ฌธ์—, "์›”"์€ 0๋ฒˆ์งธ๋ผ๊ณ  ์ƒ๊ฐํ•œ๋‹ค.

// ์ถ”๊ฐ€
daysOfWeek.push("์š”์ผ");		// "์š”์ผ" ์ถ”๊ฐ€

console.log(daysOfWeek);		// ["์›”", "ํ™”", "์ˆ˜", "๋ชฉ", "๊ธˆ", "ํ† ", "์ผ", "์š”์ผ"] ์ถœ๋ ฅ

// ๋ณ€๊ฒฝ
daysOfWeek[4] = "๋ถˆ๊ธˆ";		// "๊ธˆ"์—์„œ "๋ถˆ๊ธˆ"์œผ๋กœ ๋ณ€๊ฒฝ

console.log(daysOfWeek);		// ["์›”", "ํ™”", "์ˆ˜", "๋ชฉ", "๋ถˆ๊ธˆ", "ํ† ", "์ผ", "์š”์ผ"] ์ถœ๋ ฅ
  • const๋กœ ์„ ์–ธ๋œ ๋ฐฐ์—ด์€ ์žฌํ• ๋‹น์€ ๋ถˆ๊ฐ€๋Šฅํ•˜์ง€๋งŒ, ๋ฐฐ์—ด์˜ ๋‚ด์šฉ(๋ฐฐ์—ด์˜ ์š”์†Œ)์€ ์ˆ˜์ •ํ•  ์ˆ˜ ์žˆ๋‹ค. ์ด๊ฒƒ์€ Javascript์—์„œ ๋ณ€์ˆ˜์™€ ๊ฐ’์˜ ์ฐจ์ด์— ๋Œ€ํ•œ ์ดํ•ด์™€ ๊ด€๋ จ์ด ์žˆ๋‹ค.

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

const numbers = [1, 2, 3];
numbers[0] = 0;		// ๊ฐ€๋Šฅ - ๋ฐฐ์—ด์˜ ๋‚ด์šฉ์„ ์ˆ˜์ •ํ•˜๋Š” ๊ฒƒ์ด๋ฏ€๋กœ ํ—ˆ์šฉ๋จ
console.log(numbers);		// [0, 2, 3] ์ถœ๋ ฅ

numbers.push(4);		// ๊ฐ€๋Šฅ -> ๋ฐฐ์—ด์˜ ๋‚ด์šฉ์„ ์ˆ˜์ •ํ•˜๋Š” ๊ฒƒ์ด๋ฏ€๋กœ ํ—ˆ์šฉ๋จ
console.log(numbers);		// [0, 2, 3, 4] ์ถœ๋ ฅ

numbers = [5, 6, 7];		// ๋ถˆ๊ฐ€๋Šฅ -> ๋ณ€์ˆ˜์— ์ƒˆ๋กœ์šด ๋ฐฐ์—ด์„ ํ• ๋‹นํ•˜๋ ค๊ณ  ํ•˜๊ธฐ ๋•Œ๋ฌธ์— ์—๋Ÿฌ๊ฐ€ ๋ฐœ์ƒํ•จ
  • ์ด๋Ÿฌํ•œ ๋™์ž‘์€ const๋กœ ์„ ์–ธ๋œ ๋ฐฐ์—ด์ด ๋‹ค๋ฅธ ๋ฐฐ์—ด์„ ์ฐธ์กฐํ•˜์ง€ ์•Š๊ณ , ๋‹จ์ง€ ๊ฐ™์€ ๋ฐฐ์—ด์„ ๊ฐ€๋ฆฌํ‚ค๊ณ  ์žˆ๋Š” ํ•œ, ๋ฐฐ์—ด์˜ ๋‚ด์šฉ์„ ์ˆ˜์ •ํ•˜๋Š” ๊ฒƒ์ด ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ์˜ ์ผ๊ด€๋œ ๋™์ž‘์ด๋‹ค.

๐Ÿ” Object(๊ฐ์ฒด)

  • ํ‚ค(key)๊ณผ ๊ฐ’(value)์œผ๋กœ ๊ตฌ์„ฑ๋œ ํ”„๋กœํผํ‹ฐ(Property)๋“ค์˜ ์ง‘ํ•ฉ์ด๋‹ค.
  • ์„ค๋ช…์ด ํ•„์š”ํ•˜์ง€ ์•Š์€ ๋ฐ์ดํ„ฐ ๋ฆฌ์ŠคํŠธ๋“ค์€ array๋กœ, ์„ค๋ช…์ด ํ•„์š”ํ•œ ์ •๋ณด๊ฐ€ ๋‹ด๊ธด ๋ฐ์ดํ„ฐ ๋ฆฌ์ŠคํŠธ๋“ค์€ object๋ฅผ ์‚ฌ์šฉํ•œ๋‹ค.
const player = {
  name : "์ฒ ์ˆ˜",
  points : 10,
  fat : true,
};

console.log(player);		// {name : "์ฒ ์ˆ˜", points : 10, fat : true} ์ถœ๋ ฅ
console.log(player.name);		// "์ฒ ์ˆ˜" ์ถœ๋ ฅ
console.log(player["name"]);		// "์ฒ ์ˆ˜" ์ถœ๋ ฅ

// ๋ณ€๊ฒฝ
player.fat = false;		// fat ๊ธฐ์กด ๊ฐ’์„ false๋กœ ๋ณ€๊ฒฝ
player.points = player.points + 10;		// ๊ธฐ์กด ํฌ์ธํŠธ์—์„œ 10 ๋”ํ•˜๊ณ  ๋ณ€๊ฒฝ

console.log(player);		// {name : "์ฒ ์ˆ˜", points : 20, fat : false} ์ถœ๋ ฅ -> fat๊ฐ€ true์—์„œ false๋กœ, points๋Š” 10์—์„œ 20์œผ๋กœ ๋ณ€๊ฒฝ๋œ๋‹ค.

// ์ถ”๊ฐ€
player.lastName = "๊น€";		// lastName = "๊น€" ์ถ”๊ฐ€

console.log(player);		// {name : "์ฒ ์ˆ˜", points : 10, fat : false, lastName : "๊น€"} ์ถœ๋ ฅ -> object์— property(ํ”„๋กœํผํ‹ฐ) ์ถ”๊ฐ€ ํ•  ์ˆ˜ ์žˆ๋‹ค.

๐Ÿ” Function(ํ•จ์ˆ˜)

  • ์–ด๋–ค ์ฝ”๋“œ๋ฅผ ์บก์Аํ™” ํ•ด์„œ ์‹คํ–‰์„ ์—ฌ๋Ÿฌ๋ฒˆ ํ•  ์ˆ˜ ์žˆ๊ฒŒ ํ•ด์ค€๋‹ค.
  • ์žฌ์‚ฌ์šฉ ๊ฐ€๋Šฅํ•œ ์ฝ”๋“œ ์กฐ๊ฐ์„ ๋งŒ๋“ค ๋•Œ ์‚ฌ์šฉ๋˜๋ฉฐ, ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ ํ†ตํ•ด ๊ฐ’์„ ์ „๋‹ฌ๋ฐ›๊ณ , ๊ทธ ๊ฐ’์„ ๊ธฐ๋ฐ˜์œผ๋กœ ์ž‘์—…์„ ์ˆ˜ํ–‰ํ•œ ํ›„ ๊ฒฐ๊ณผ๋ฅผ ๋ฐ˜ํ™˜ํ•  ์ˆ˜ ์žˆ๋‹ค.
// ์„ ์–ธ
function ํ•จ์ˆ˜๋ช…(){
  ์‹คํ–‰ํ•  ์ฝ”๋“œ
}

// ์‹คํ–‰
ํ•จ์ˆ˜๋ช…();
  • function์˜ "()" ์•ˆ์˜ ๋งค๊ฐœ๋ณ€์ˆ˜์—์„œ ์•„๊ทœ๋จผํŠธ(argument)๋ฅผ ๋ฐ›์•„๋“ค์ผ ์ˆ˜ ์žˆ๋‹ค.
function sayHello(nameOfPerson) {
console.log(nameOfPerson);
}

sayHello("์ฒ ์ˆ˜");		// "์ฒ ์ˆ˜" ์ถœ๋ ฅ
sayHello("์œ ๋ฆฌ");		// "์œ ๋ฆฌ" ์ถœ๋ ฅ
sayHello("๋งน๊ตฌ");		// "๋งน๊ตฌ" ์ถœ๋ ฅ

// ์•„๊ทœ๋จผํŠธ(argument) ์—ฌ๋Ÿฌ ๊ฐœ ๋ฐ›์„ ๋•Œ
function sayHello(nameOfPerson , age) {
console.log(nameOfPerson);
}

sayHello("์ฒ ์ˆ˜" , 12);		// "์ฒ ์ˆ˜",12 ์ถœ๋ ฅ
sayHello("์œ ๋ฆฌ" , 20);		// "์œ ๋ฆฌ",20 ์ถœ๋ ฅ
sayHello("๋งน๊ตฌ" , 23);		// "๋งน๊ตฌ",23 ์ถœ๋ ฅ
  • function์˜ ๊ฐ’์€ function ์•ˆ์—์„œ๋งŒ ์กด์žฌํ•œ๋‹ค.
// ๊ฐ์ฒด(Object) ์•ˆ์—์„œ ๋งค๊ฐœ๋ณ€์ˆ˜๊ฐ€ ์•„๊ทœ๋จผํŠธ(argument)๋ฅผ ๋ฐ›๋Š” ๋ฐฉ์‹
const player = {
name : function(Name) {
console.log("๋‚ด ์ด๋ฆ„์€ " + Name + "์ž…๋‹ˆ๋‹ค.");
} ,
sayHello : function(Age) {
console.log("๋‚ด ๋‚˜์ด๋Š” " + Age + "์ž…๋‹ˆ๋‹ค." );
}
}

player.sayHello(14);		// "๋‚ด ๋‚˜์ด๋Š” 14์ž…๋‹ˆ๋‹ค." ์ถœ๋ ฅ
player.name("์ œ์ž„์Šค");		// "๋‚ด ์ด๋ฆ„์€ ์ œ์ž„์Šค์ž…๋‹ˆ๋‹ค." ์ถœ๋ ฅ

๐Ÿ” Return

  • console.log๋Š” console์— ๋ฌด์–ธ๊ฐ€๋ฅผ log ํ•˜๋Š” ๊ฒƒ์ด๋‹ค. ํ•˜์ง€๋งŒ ์šฐ๋ฆฌ๋Š” ๋ฐ์ดํ„ฐ๋ฅผ ๋ฐ›์•„์„œ ์‚ฌ์šฉํ•˜๊ฑฐ๋‚˜ ์ฝ˜์†”์ด ์•„๋‹Œ ํ™”๋ฉด์— ๊ฒฐ๊ณผ๋ฅผ ์ถœ๋ ฅํ•˜๊ณ  ์‹ถ์–ดํ•˜๊ธฐ ๋•Œ๋ฌธ์— return ์‚ฌ์šฉํ•œ๋‹ค.

  • return์€ ์นดํŽ˜๋‚˜ ์‹๋‹น์˜ ํ…Œ์ดํฌ์•„์›ƒ ๊ฐœ๋…์ธ ๊ฒƒ ๊ฐ™๋‹ค. ํ•จ์ˆ˜์—์„œ ๋งŒ๋“ค์–ด์„œ ๋‚ด๋ณด๋‚ธ ๊ฒฐ๊ณผ๊ฐ’์„ ํ•จ์ˆ˜ ๋ฐ–์œผ๋กœ ๋“ค๊ณ  ๋‚˜๊ฐ€์„œ ๋‹ค๋ฅธ๋ฐ์„œ ๊ทธ๋Œ€๋กœ ์ถœ๋ ฅํ•˜๊ฑด ๋‹ค๋ฅธ ๊ฑฐ๋ž‘ ์„ž์–ด์„œ ๋น„๋ฒผ๋จน๊ฑด ๋ณถ์•„๋จน๊ฑด ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๊ฒŒ ํ•ด์ค€๋‹ค.

  • ํ•œ๋ฒˆ return์„ ํ•˜๋ฉด ํ•ด๋‹น ํ•จ์ˆ˜๋Š” ๋๋‚œ๋‹ค. ๊ทธ๋ ‡๊ธฐ ๋•Œ๋ฌธ์— return๋’ค์— ์ž‘์—…์„ ํ•œ๋‹ค๋ฉด ์ถœ๋ ฅ๋˜์ง€ ์•Š๋Š”๋‹ค! (๏ผƒreturn ์•ž์— ์ž‘์—…์„ ํ•œ๋‹ค๋ฉด ์ถœ๋ ฅ๋œ๋‹ค)

  • return์€ ๋ง ์ž์ฒด๋กœ ๋‹ค์‹œ ๋Œ๋ ค์ค€๋‹ค๋ผ๋Š” ์˜๋ฏธ๋กœํ•ด๋‹น ํ•จ์ˆ˜์˜ ๋ณ€์ˆ˜๊ฐ’์„ ์ง€์ •ํ•ด์ฃผ๋ฉด ํ•ด๋‹น code๋ฅผ ์•ˆ์—์„œ ์‹คํ–‰ํ•ด์„œ ๊ทธ ๊ฒฐ๊ณผ๊ฐ’์„ ํ•ด๋‹น ํ•จ์ˆ˜์˜ ๋ณ€์ˆ˜๊ฐ’์„ ์„ ์–ธํ•œ ๋ณ€์ˆ˜ํ•œํ…Œ ๋Œ๋ ค์ฃผ๋Š” ๊ฒƒ์ด๋‹ค.

function fun(a, b) {
  console.log("Hi");		
  return a + b;		// ํ•จ์ˆ˜ ์‹คํ–‰์„ ์ข…๋ฃŒํ•˜๊ณ , ์ฃผ์–ด์ง„ ๊ฐ’์„ ํ˜ธ์ถœ ์ง€์ ์œผ๋กœ ๋ฐ˜ํ™˜ํ•œ๋‹ค.
  console.log("bye");		// return์„ ํ•˜๋ฉด ๊ฑฐ๊ธฐ์„œ ํ•จ์ˆ˜๊ฐ€ ๋๋‚˜๊ธฐ ๋•Œ๋ฌธ์— ๊ทธ ๋‹ค์Œ ์ฝ”๋“œ๋Š” ์‹คํ–‰ ์•ˆ๋œ๋‹ค.
}

const result = fun(2, 5)		// "Hi" ์ถœ๋ ฅ

console.log(result);		// "Hi" 5 ์ถœ๋ ฅ

๐Ÿ” ์กฐ๊ฑด๋ฌธ

  • ํŠน์ • ์กฐ๊ฑด ๋งŒ์กฑ ์‹œ(์ฐธ์ธ ๊ฒฝ์œ ) ์‹คํ–‰ํ•˜๋Š” ๋ช…๋ น์˜ ์ง‘ํ•ฉ์ด๋ฉฐ, ์–ด๋–ค ์ž‘์—…์„ ์ˆ˜ํ–‰ํ•˜๊ณ  ์‹ถ์„ ๋•Œ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์ด๋‹ค.

1. if ~else๋ฌธ

if (์กฐ๊ฑด์‹) {
	// statement1
} else if(์กฐ๊ฑด์‹) {
  	// statement2 
} else {
  	// statement3
}
  • if ์•ˆ์— ์žˆ๋Š” ์กฐ๊ฑด์‹์ด ์ฐธ์ธ ๊ฒฝ์šฐ ํ•ด๋‹นํ•˜๋Š” if๋ฌธ, else if๋ฌธ์„ ์‹คํ–‰ ํ•œ๋‹ค.
  • ์กฐ๊ฑด๋ฌธ(if,ย elseย if)์—ย ๋ชจ๋‘ย ํ•ด๋‹นํ•˜์ง€ย ์•Š์œผ๋ฉดย else์—ย ์žˆ๋Š”ย statement3ย ์ดย ์‹คํ–‰๋œ๋‹ค.
  • elseย if์—๋Š”ย ๊ฐฏ์ˆ˜ย ์ œํ•œ์ดย ๋”ฐ๋กœย ์—†๋‹ค.

2. ์กฐ๊ฑด์‹ ๊ฑฐ์ง“์œผ๋กœ ์ทจ๊ธ‰ํ•˜๋Š” ๊ฐ’

1)ย false
2)ย undefined
3)ย null
4)ย 0
5)ย NaN
6)ย theย emptyย stringย ("")

3. if๋ฌธ ์ค‘์ฒฉ

  • if๋ฌธ์€ ์ค‘์ฒฉ์‹œ์ผœ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋‹ค.
const score = 96;
const lecture = "sports";

if("sports" == lecture){
	if (score >= 70){
		console.log("์ ์ˆ˜ : pass");
	}
	else{
		console.log("์ ์ˆ˜ : fail");
	}
}else{
	if (score >= 90){
		console.log("์ ์ˆ˜ : A");
	}else if (score >= 80){
		console.log("์ ์ˆ˜ : B");
	}else if (score >= 70){
		console.log("์ ์ˆ˜ : C");
	}else if (score >= 60){
		console.log("์ ์ˆ˜ : D");
	}else {
		console.log("์ ์ˆ˜ : F");
	}
}
// "์ ์ˆ˜ : pass" ์ถœ๋ ฅ

๐Ÿ” ๋…ผ๋ฆฌ ์—ฐ์‚ฐ์ž

  • ์ขŒ๋ณ€๊ณผ ์šฐ๋ณ€์„ ๋…ผ๋ฆฌ ์—ฐ์‚ฐํ•˜๊ณ , ์ฐธ์ผ๋•Œ๋Š” true, ๊ฑฐ์ง“์ผ๋•Œ๋Š” false๊ฐ’์„ ๋ฐ˜ํ™˜ํ•œ๋‹ค.
  • ๋‘๊ฐœ ์ด์ƒ์˜ ๋น„๊ต ์—ฐ์‚ฐ์ž์˜ ๊ฒฐ๊ณผ๋‚˜ boolean ๊ฐ’์— ๋Œ€ํ•ด ์ถ”๊ฐ€๋กœ "AND"๋‚˜ "OR"์—ฐ์‚ฐ์„ ์ˆ˜ํ–‰ํ•˜์—ฌ ๊ฒฐ๊ณผ๋ฅผ ์–ป๋Š”๋‹ค.

1. AND

  • "&&" ์—ฐ์‚ฐ์ž ๋‘ ๊ฐœ์˜ boolean๊ฐ’์„ ๋น„๊ตํ•˜์—ฌ ๋ชจ๋‘ true์ธ ๊ฒฝ์šฐ์—๋งŒ ๊ฒฐ๊ณผ๊ฐ’์ด true์ด๋‹ค.

2. OR

  • ||(enter ํ‚ค ์œ„์˜ \ + shift) ์—ฐ์‚ฐ์ž๋Š” ๋‘ ๊ฐœ์˜ boolean๊ฐ’์„ ๋น„๊ตํ•˜์—ฌ ๋‘˜์ค‘ ํ•˜๋‚˜๋ผ๋„ true์ธ ๊ฒฝ์šฐ ๊ฒฐ๊ณผ๊ฐ’์ด true์ด๋‹ค.

๐Ÿ” ๋น„๊ต ์—ฐ์‚ฐ์ž

  • ๋‘ ๊ฐœ์˜ ๋ณ€์ˆ˜๊ฐ’ ๊ฐ„์˜ ๊ด€๊ณ„๋ฅผ ๋น„๊ตํ•˜์—ฌ ์ฐธ(true)์ด๋‚˜ ๊ฑฐ์ง“(false)์˜ ๊ฒฐ๊ณผ๋ฅผ ๋ฐ˜ํ™˜ํ•œ๋‹ค.
  • ์ฃผ์–ด์ง„ ์‹์ด ์ฐธ์ธ์ง€ ๊ฑฐ์ง“์ธ์ง€ ํŒ๋ณ„ ๊ฐ€๋Šฅํ•˜๋ฏ€๋กœ, ์—ฐ์‚ฐ ๊ฒฐ๊ณผ๋Š” boolean ๊ฐ’์œผ๋กœ ์ƒ์„ฑ๋œ๋‹ค.

1. ===

  • ๋‘ ๊ฐ’์ด ๊ฐ™๋‹ค.
  • ==๋Š” ๋‘ ํ”ผ์—ฐ์‚ฐ์ž๊ฐ€ ๋™์ผํ•œ ๊ฒฝ์šฐ์—๋งŒ true๋ฅผ ๋ฐ˜ํ™˜ํ•˜๊ณ , ===๋Š” ๋‘ ๋ณ€์ˆ˜์— ๋Œ€ํ•ด ๊ฐ’๊ณผ ๋ฐ์ดํ„ฐ ์œ ํ˜•์ด ๋ชจ๋‘ ๋™์ผํ•œ ๊ฒฝ์šฐ์—๋งŒ true๋ฅผ ๋ฐ˜ํ™˜ํ•œ๋‹ค.

2. !==

  • ๋‘ ๊ฐ’์ด ๋‹ค๋ฅด๋‹ค.

3. <, >

  • ํ•œ ๊ฐ’์ด ๋‹ค๋ฅธ ๊ฐ’๋ณด๋‹ค ํฌ๊ฑฐ๋‚˜ ์ž‘๋‹ค.

4. <=, >=

  • ํ•œ ๊ฐ’์ด ๋‹ค๋ฅธ ๊ฐ’๋ณด๋‹ค ์ž‘๊ฑฐ๋‚˜ ๊ฐ™์€์ง€, ํฌ๊ฑฐ๋‚˜ ๊ฐ™๋‹ค.

0๊ฐœ์˜ ๋Œ“๊ธ€