Lecture/์ฝ”๋“œ์Šคํ…Œ์ด์ธ 

[SEB FE] section 1 unit 10 (2) ์Šค์ฝ”ํ”„

Dong _ hwa 2022. 9. 6. 17:32

์Šค์ฝ”ํ”„ :  "๋ณ€์ˆ˜ ์ ‘๊ทผ ๊ทœ์น™์— ๋”ฐ๋ฅธ ์œ ํšจ ๋ฒ”์œ„"

let username = 'kimcoding';
if (username) {
  let message = `Hello, ${username}!`;
  console.log(message); // ์—ฌ๊ธฐ์„œ ๋ฉ”์‹œ์ง€๋ฅผ ์ถœ๋ ฅํ•  ๋•Œ๋Š”, 3๋ฒˆ์งธ ์ค„์˜ username์„ ๋ฐ”๊นฅ์Šค์ฝ”ํ”„์—์„œ ๊ฐ€์ ธ์˜ด
}

console.log(message); // ์—ฌ๊ธฐ์„œ ์ถœ๋ ฅํ•  ๋•Œ๋Š”, message๋ผ๋Š” ๋ณ€์ˆ˜์ž์ฒด๊ฐ€ ์Šค์ฝ”ํ”„ ์•ˆ์—์„œ ์„ ์–ธ, ๋ฐ”๊นฅ์—์„  x

์ถœ๋ ฅ -> "Hello, kimcoding!" /  ReferenceError

 

 

 

let greeting = 'Hello';
function greetSomeone() {
  let firstName = 'Josh';
  return greeting + ' ' + firstName;
}

console.log(greetSomeone()); // --> Hello Josh
console.log(firstName); // --> ReferenceError
  • greeting ๋ณ€์ˆ˜๋Š” ๋ฐ”๊นฅ ์Šค์ฝ”ํ”„์— ์ •์˜๋˜์–ด ์žˆ์œผ๋ฏ€๋กœ, ํ•จ์ˆ˜ ์•ˆ์ชฝ์—์„œ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
    ๋”ฐ๋ผ์„œ greeting ๋ณ€์ˆ˜์™€ firstName ๋ณ€์ˆ˜์˜ ์กฐํ•ฉ์— ์˜ํ•ด 'Hello Josh' ๋ฌธ์ž์—ด์ด ์ถœ๋ ฅ๋ฉ๋‹ˆ๋‹ค.
  • ๋ฐ˜๋ฉด์—, firstName ๋ณ€์ˆ˜๋Š” ์•ˆ์ชฝ ์Šค์ฝ”ํ”„์— ์ •์˜๋˜์–ด ์žˆ์œผ๋ฏ€๋กœ ๋ฐ”๊นฅ์ชฝ์—์„œ๋Š” ์ ‘๊ทผ์ด ๋ถˆ๊ฐ€๋Šฅํ•ฉ๋‹ˆ๋‹ค. ๋”ฐ๋ผ์„œ ReferenceError๋ฅผ ๋ƒ…๋‹ˆ๋‹ค.

 

๋ฐ”๊นฅ์ชฝ ์Šค์ฝ”ํ”„์—์„œ ์„ ์–ธํ•œ ๋ณ€์ˆ˜๋Š” ์•ˆ์ชฝ ์Šค์ฝ”ํ”„์—์„œ ์‚ฌ์šฉ ๊ฐ€๋Šฅ

์•ˆ์ชฝ์—์„œ ์„ ์–ธํ•œ ๋ณ€์ˆ˜๋Š” ๋ฐ”๊นฅ์ชฝ ์Šค์ฝ”ํ”„์—์„œ๋Š” ์‚ฌ์šฉ ๋ถˆ๊ฐ€๋Šฅ

 

 

 

let name = '๊น€์ฝ”๋”ฉ';

function showName() {
  name = '๋ฐ•ํ•ด์ปค';  // let ์„ ์–ธ์ด ์—†๋‹ค. ์ „์—ญ์— ์‚ฌ์šฉ๋œ name๋ณ€์ˆ˜๋ฅผ ์‚ฌ์šฉํ•˜๊ฒ ๋‹ค๋Š” ๋ง
  console.log(name); // ๋‘ ๋ฒˆ์งธ ์ถœ๋ ฅ : ๋ฐ•ํ•ด์ปค
}

console.log(name); // ์ฒซ ๋ฒˆ์งธ ์ถœ๋ ฅ : ๊น€์ฝ”๋”ฉ
showName();
console.log(name); // ์„ธ ๋ฒˆ์งธ ์ถœ๋ ฅ : showName ํ›„ ๋ฐ•ํ•ด์ปค

 

 

 

let, var, const

 

var ํ‚ค์›Œ๋“œ๋Š” ๋ธ”๋ก์Šค์ฝ”ํ”„๋ฅผ ๋ฌด์‹œํ•˜๊ณ  ํ•จ์ˆ˜ ์Šค์ฝ”ํ”„๋งŒ ๋”ฐ๋ฆ„ (ํ™”์‚ดํ‘œ ์Šค์ฝ”ํ”„๋Š” ๋”ฐ๋ฅธ๋‹ค)

์ „์—ญ ๋ณ€์ˆ˜๋ฅผ var๋กœ ์„ ์–ธํ•˜๋Š” ๊ฒƒ์€ ๋ธŒ๋ผ์šฐ์ €์˜ ๋‚ด์žฅ ๊ธฐ๋Šฅ์„ ์‚ฌ์šฉํ•˜์ง€ ๋ชปํ•˜๊ฒŒ ๋งŒ๋“ค ์ˆ˜๋„ ์žˆ์Šต๋‹ˆ๋‹ค.

 

 

 

for (var i = 0; i < 5; i++) {
    console.log(i); // ๋‹ค์„ฏ ๋ฒˆ ๋ฐ˜๋ณต
}
console.log('final i:', i); // 5

/

for (let i = 0; i < 5; i++) {
    console.log(i); // ๋‹ค์„ฏ ๋ฒˆ ๋ฐ˜๋ณต
}
console.log('final i:', i); // ReferenceError

 

let์€ ์žฌ์„ ์–ธ์„ ๋ฐฉ์ง€ํ•œ๋‹ค

 

์ƒ์ˆ˜(constant)๋ฅผ ์ •์˜ํ•  ๋•Œ์—๋Š” const๋ฅผ ์ด์šฉ

 

์„ ์–ธ ์—†์ด ๋ณ€์ˆ˜๋ฅผ ํ• ๋‹นํ•˜์ง€ ๋งˆ์„ธ์š”. ์„ ์–ธ ์—†์ด ๋ณ€์ˆ˜๋ฅผ ํ• ๋‹นํ•˜๋ฉด, ํ•ด๋‹น ๋ณ€์ˆ˜๋Š” var๋กœ ์„ ์–ธํ•œ ์ „์—ญ ๋ณ€์ˆ˜์ฒ˜๋Ÿผ ์ทจ๊ธ‰๋ฉ๋‹ˆ๋‹ค.