๐ŸŸฉ Frontend-HTML & CSS & +JS/๐Ÿ”ฐJavaScript ๊ธฐ์ดˆ

1. ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ ๊ธฐ์ดˆ (์ž๋ฐ” ์Šคํฌ๋ฆฝํŠธ ํŠน์ง•, use strict)

ramen2 2024. 9. 27. 19:54

๐Ÿ“Œ ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ์˜ ํŠน์ง•

 

  • ์›น์˜ ๋™์  ๋™์ž‘์„ ๊ตฌํ˜„ํ•˜๊ธฐ ์œ„ํ•œ ์–ธ์–ด
  • ์›น ๋ธŒ๋ผ์šฐ์ €์—์„œ ์‹คํ–‰๋˜๋ฉฐ, ์„œ๋ฒ„ ํ™˜๊ฒฝ์—์„œ๋Š” Node.js๋กœ ๋™์ž‘ ๊ฐ€๋Šฅ
  • HTML ๋ฌธ์„œ ๋‚ด์—์„œ <script> ~ </script> ํƒœ๊ทธ ์•ˆ์— ์ž‘์„ฑ
  • ๋Œ€์†Œ๋ฌธ์ž๋ฅผ ๊ตฌ๋ณ„ํ•จ (let๊ณผ Let์€ ๋‹ค๋ฅธ ๋ณ€์ˆ˜๋กœ ์ธ์‹)
  • ๊ฐ์ฒด ๊ธฐ๋ฐ˜์˜ ์Šคํฌ๋ฆฝํŠธ ์–ธ์–ด๋กœ, ๋‹ค์–‘ํ•œ ๊ฐ์ฒด๋ฅผ ํ™œ์šฉํ•˜์—ฌ ๋™์ž‘์„ ๊ตฌํ˜„
  • ์›น ๋ธŒ๋ผ์šฐ์ € ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ ์—”์ง„์ด ๋‚ด์žฅ๋˜์–ด ์žˆ์–ด ๋ณ„๋„์˜ ์„ค์ • ์—†์ด ์‚ฌ์šฉ ๊ฐ€๋Šฅ

๐Ÿ“Œ use strict (js ์ž‘์„ฑ์‹œ ์ตœ์ƒ๋‹จ์— ์ž‘์„ฑ)

 

  • ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ์—์„œ strict mode๋ฅผ ์‚ฌ์šฉํ•˜๊ฒ ๋‹ค๋Š” ์„ ์–ธ
  • ์—„๊ฒฉํ•œ ๋ฌธ๋ฒ•์„ ์ ์šฉํ•˜์—ฌ, ์‹ค์ˆ˜๋ฅผ ์ค„์ด๊ณ  ์ฝ”๋“œ ํ’ˆ์งˆ์„ ๋†’์ด๋Š” ์—ญํ• 
    • ์˜ˆ: ๋ณ€์ˆ˜ ์„ ์–ธ ์—†์ด ์‚ฌ์šฉ ๋ถˆ๊ฐ€, ๋Œ€์†Œ๋ฌธ์ž ๋ช…ํ™•ํ•˜๊ฒŒ ๊ตฌ๋ถ„
  • ์ƒ๋‹จ์— "use strict";๋ฅผ ์ถ”๊ฐ€ํ•˜์—ฌ ํ™œ์„ฑํ™” ๊ฐ€๋Šฅ
    • use strict ์—†์ด๋„ ์ฝ”๋“œ๋ฅผ ์ž‘์„ฑํ•  ์ˆ˜ ์žˆ์ง€๋งŒ, ์ด๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด ๋ณด๋‹ค ์•ˆ์ „ํ•˜๊ฒŒ ์ฝ”๋”ฉ ๊ฐ€๋Šฅ
"use strict";
x = 10;  // Error: strict mode์—์„œ๋Š” ๋ณ€์ˆ˜๋ฅผ ์„ ์–ธํ•˜์ง€ ์•Š๊ณ  ์‚ฌ์šฉํ•  ์ˆ˜ ์—†์Œ