wam
w__am ๊ฐœ๋ฐœ๋…ธํŠธ
wam
  • ๋ถ„๋ฅ˜ ์ „์ฒด๋ณด๊ธฐ (165)
    • CS ์ง€์‹ (10)
      • ์ž๋ฃŒ๊ตฌ์กฐ (0)
      • ์•Œ๊ณ ๋ฆฌ์ฆ˜ (0)
      • ์ปดํ“จํ„ฐ ๊ตฌ์กฐ (0)
      • ์šด์˜์ฒด์ œ (0)
      • ๋„คํŠธ์›Œํฌ (7)
      • ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค (0)
      • ๋””์ž์ธ ํŒจํ„ด (3)
    • Frontend (131)
      • Three.js (64)
      • NPM (1)
      • Nest.js (19)
      • React (10)
      • Apollo (7)
      • TypeScript (2)
      • JavaScript (12)
      • HTML, CSS (1)
      • Jest (3)
      • E2E (5)
      • Cypress (7)
    • Database (12)
      • TypeORM (12)
    • IT ์ง€์‹ (8)
      • ํด๋ผ์šฐ๋“œ ์„œ๋น„์Šค (3)
      • ๋„คํŠธ์›Œํฌ (1)
      • ๋ฐ์ดํ„ฐ ํฌ๋งท (2)
      • ๊ธฐํƒ€ (2)
    • IT Book (2)
    • ์œ ์šฉํ•œ ์‚ฌ์ดํŠธ (1)

๋ธ”๋กœ๊ทธ ๋ฉ”๋‰ด

  • ํ™ˆ
  • ํƒœ๊ทธ
  • ๋ฐฉ๋ช…๋ก
  • ๐Ÿฑ Github

์ธ๊ธฐ ๊ธ€

ํƒœ๊ทธ

  • Decorators
  • ์›ํ˜•์ ์ธ ์›€์ง์ž„
  • joi ์—๋Ÿฌ
  • getdelta()
  • e.preventdefault()
  • ํ•จ์ˆ˜ ํ‘œํ˜„์‹
  • ์˜คํ”„-ํ”„๋ ˆ๋ฏธ์Šค(off-premise) ๋ฐฉ์‹
  • reactive variables
  • ๋ฐ์ดํ„ฐ ํฌ๋งท
  • getelapsedtime()
  • react ์„ฑ๋Šฅ ์ตœ์ ํ™”
  • ์Šค์ฝ”ํ”„
  • type-graphql
  • ํ•จ์ˆ˜ ์„ ์–ธ๋ฌธ
  • ์ดˆ๊ธฐ ํ™˜๊ฒฝ์„ค์ •
  • three.js ๊ตฌ์„ฑ ์š”์†Œ
  • isabstract
  • math.cos()
  • gridhelper
  • ๋””์ž์ธ ํŒจํ„ด
  • Interface
  • math.sin()
  • mapped types
  • ์‚ผ๊ฐํ•จ์ˆ˜
  • ํ•จ์ˆ˜ ๋ฆฌํ„ฐ๋Ÿด
  • ํ•จ์ˆ˜์˜ ๋ฒ”์œ„
  • API
  • threejs ๊ฐœ๋ฐœ ํ•  ๋•Œ ๋„์›€์„ ์ค„ ์ˆ˜ ์žˆ๋Š” ์œ ํ‹ธ๋ฆฌํ‹ฐ
  • ๋ Œ๋”๋ง ์„ฑ๋Šฅ ์ตœ์ ํ™”
  • axeshelper

์ตœ๊ทผ ๊ธ€

๊ด€๋ฆฌ์ž

๊ธ€์“ฐ๊ธฐ / ์Šคํ‚จํŽธ์ง‘ / ๊ด€๋ฆฌ์žํŽ˜์ด์ง€
hELLO ยท Designed By ์ •์ƒ์šฐ.
wam

w__am ๊ฐœ๋ฐœ๋…ธํŠธ

ํ•จ์ˆ˜ ํ˜ธ์ด์ŠคํŒ…
Frontend/JavaScript

ํ•จ์ˆ˜ ํ˜ธ์ด์ŠคํŒ…

2024. 3. 6. 21:33
๐Ÿ’ก ํ•จ์ˆ˜ ์„ ์–ธ๋ฌธ : ์„ ์–ธ๋ฌธ ์ด์ „์— ํ˜ธ์ถœ ๊ฐ€๋Šฅ, ํ•จ์ˆ˜ ํ˜ธ์ด์ŠคํŒ…, ํ•จ์ˆ˜ ๊ฐ์ฒด ์ดˆ๊ธฐํ™”
๐Ÿ’ก ํ•จ์ˆ˜ ํ‘œํ˜„์‹ : ํ‘œํ˜„์‹ ์ด์ „์— ํ˜ธ์ถœ ๋ถˆ๊ฐ€๋Šฅ, ๋ณ€์ˆ˜ ํ˜ธ์ด์ŠคํŒ…, undefined ์ดˆ๊ธฐํ™”

 

 

ํ•จ์ˆ˜ ์ƒ์„ฑ ์‹œ์ ๊ณผ ํ•จ์ˆ˜ ํ˜ธ์ด์ŠคํŒ…

 

 

ํ•จ์ˆ˜ ์„ ์–ธ๋ฌธ

function add(x, y) {
	return x + y;
}
  • ํ•จ์ˆ˜ ๊ฐ์ฒด๋กœ ์ดˆ๊ธฐํ™”
    • ํ•จ์ˆ˜ ์ •์˜ → ๋Ÿฐํƒ€์ž„ ์ด์ „ ํ•จ์ˆ˜ ๊ฐ์ฒด๊ฐ€ ๋จผ์ € ์‹คํ–‰ (์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ ์—”์ง„์€ ํ•จ์ˆ˜ ์ด๋ฆ„๊ณผ ๋™์ผํ•œ ์ด๋ฆ„์˜ ์‹๋ณ„์ž๋ฅผ ์•”๋ฌต์ ์œผ๋กœ ์ƒ์„ฑ, ์ƒ์„ฑ๋œ ํ•จ์ˆ˜ ๊ฐ์ฒด๋ฅผ ํ• ๋‹น)
    • ์„ ์–ธ๋ฌธ ์ด์ „์— ํ˜ธ์ถœํ•˜๋ฉด ํ•จ์ˆ˜ ํ˜ธ์ด์ŠคํŒ…์— ์˜ํ•ด ํ˜ธ์ถœ์ด ๊ฐ€๋Šฅ

 

 

ํ•จ์ˆ˜ ํ‘œํ˜„์‹

var sub = function add(x, y) {
	return x + y;
}
  • undefined๋กœ ์ดˆ๊ธฐํ™”
    • ๋ณ€์ˆ˜ ์„ ์–ธ์€ ๋Ÿฐํƒ€์ž„ ์ด์ „์— ์‹คํ–‰๋˜์–ด undefined๋กœ ์ดˆ๊ธฐํ™”
    • ๋ณ€์ˆ˜ ํ• ๋‹น๋ฌธ์˜ ๊ฐ’์€ ํ• ๋‹น๋ฌธ์ด ์‹คํ–‰๋˜๋Š” ์‹œ์ , ์ฆ‰ ๋Ÿฐํƒ€์ž„์ด ํ‰๊ฐ€๋˜๋ฏ€๋กœ ํ•จ์ˆ˜ ํ‘œํ˜„์‹์˜ ํ•จ์ˆ˜ ๋ฆฌํ„ฐ๋„๋„ ํ• ๋‹น๋ฌธ์ด ์‹คํ–‰๋˜๋Š” ์‹œ์ ์— ํ‰๊ฐ€๋˜์–ด ํ•จ์ˆ˜ ๊ฐ์ฒด๊ฐ€ ๋œ๋‹ค.
    • ํ‘œํ˜„์‹ ์ด์ „์— ์ฐธ์กฐํ•˜๋ฉด ๋ณ€์ˆ˜ ํ˜ธ์ด์ŠคํŒ…์— ์˜ํ•ด undefined๋กœ ํƒ€์ž… ์—๋Ÿฌ ๋ฐœ์ƒํ•˜์—ฌ ์ฐธ์กฐ ๋ถˆ๊ฐ€๋Šฅ
    • ํ•จ์ˆ˜ ํ‘œํ˜„์‹ ์ดํ›„ ์ฐธ์กฐ๋‚˜ ํ˜ธ์ถœํ•ด์•ผ ํ•œ๋‹ค.

  • ๋ณ€์ˆ˜์— ํ• ๋‹น๋˜๋Š” ๊ฐ’์ด ํ•จ์ˆ˜ ๋ฆฌํ„ฐ๋Ÿด์ธ ๋ฌธ์ด๋‹ค.

  • ํ•จ์ˆ˜ ํ‘œํ˜„์‹์„ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์„ ๊ถŒ์žฅ
    • ํ•จ์ˆ˜ ์„ ์–ธ๋ฌธ์„ ์‚ฌ์šฉํ•˜๋ฉด ์„ ์–ธ ์ „์— ํ˜ธ์ถœ์ด ๊ฐ€๋Šฅํ•ด์„œ ํ•จ์ˆ˜๋ฅผ ํ˜ธ์ถœํ•˜๊ธฐ ์ „์— ๋ฐ˜๋“œ์‹œ ํ•จ์ˆ˜๋ฅผ ์„ ์–ธํ•ด์•ผ ํ•œ๋‹ค๋Š” ๊ทœ์น™์ด ๋ฌด์‹œ๋˜๋Š” ๊ฒฝ์šฐ๊ฐ€ ์žˆ๊ธฐ ๋•Œ๋ฌธ์ด๋‹ค.

 

 

ํ•จ์ˆ˜ ํ˜ธ์ด์ŠคํŒ…๊ณผ ๋ณ€์ˆ˜ ํ˜ธ์ด์ŠคํŒ…

 

๋™์ผ์ 

๋Ÿฐํƒ€์ž„ ์ด์ „์— ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ ์—”์ง„์— ์˜ํ•ด ๋จผ์ € ์‹คํ–‰๋˜์–ด ์‹๋ณ„์ž๋ฅผ ์ƒ์„ฑํ•œ๋‹ค.

 

 

์ฐจ์ด์ 

  • ๋ณ€์ˆ˜(var) ํ˜ธ์ด์ŠคํŒ…์€ undefined๋กœ ์ดˆ๊ธฐํ™”
  • ํ•จ์ˆ˜ ํ˜ธ์ด์ŠคํŒ…์€ ํ•จ์ˆ˜ ๊ฐ์ฒด๋กœ ์ดˆ๊ธฐํ™”

ํ•จ์ˆ˜ ์„ ์–ธ๋ฌธ์œผ๋กœ ์ •์˜ํ•œ ํ•จ์ˆ˜๋Š” ํ•จ์ˆ˜ ์„ ์–ธ๋ฌธ ์ด์ „์— ํ˜ธ์ถœํ•  ์ˆ˜ ์žˆ๊ณ  ํ•จ์ˆ˜ ํ‘œํ˜„์‹์œผ๋กœ ์ •์˜ํ•œ ํ•จ์ˆ˜๋Š” ํ•จ์ˆ˜ ํ‘œํ˜„์‹ ์ด์ „์— ํ˜ธ์ถœํ•  ์ˆ˜ ์—†๋‹ค. ์ด๋Š” ํ•จ์ˆ˜ ์„ ์–ธ๋ฌธ๊ณผ ํ•จ์ˆ˜ ํ‘œํ˜„์‹์˜ ์ƒ์„ฑ ์‹œ์ ์ด ๋‹ค๋ฅด๊ธฐ ๋•Œ๋ฌธ์ด๋‹ค.

 

 

ํ•จ์ˆ˜ ๋ฆฌํ„ฐ๋Ÿด

  • ๋ฆฌํ„ฐ๋Ÿด : ์‚ฌ๋žŒ์ด ์ดํ•ดํ•  ์ˆ˜ ์žˆ๋Š” ๋ฌธ์ž ๋˜๋Š” ์•ฝ์†๋œ ๊ธฐํ˜ธ๋ฅผ ์‚ฌ์šฉํ•ด ๊ฐ’์„ ์ƒ์„ฑํ•˜๋Š” ํ‘œ๊ธฐ๋ฒ•์„ ๋งํ•œ๋‹ค.
  • ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ์˜ ํ•จ์ˆ˜๋Š” ๊ฐ์ฒด ํƒ€์ž…์˜ ๊ฐ’์ด๋‹ค.
  • ํ•จ์ˆ˜ ๋ฆฌํ„ฐ๋Ÿด์˜ ๊ตฌ์„ฑ์š”์†Œ
    • ํ•จ์ˆ˜ ์ด๋ฆ„์€ ํ•จ์ˆ˜ ๋ชธ์ฒด ๋‚ด์—์„œ๋งŒ ์ฐธ์กฐํ•  ์ˆ˜ ์žˆ๋Š” ์‹๋ณ„์ž๋‹ค.
    • ํ•จ์ˆ˜ ๋ฆฌํ„ฐ๋Ÿด์˜ ํ•จ์ˆ˜ ์ด๋ฆ„์€ ์ƒ๋žตํ•  ์ˆ˜ ์žˆ๋‹ค.
    • ์ฐธ๊ณ ) ํ•จ์ˆ˜ ์„ ์–ธ๋ฌธ๊ณผ ํ—ท๊ฐˆ๋ฆฌ์ง€ ๋ง ๊ฒƒ, ํ•จ์ˆ˜ ๋ฆฌํ„ฐ๋Ÿด์€ ๊ฐ’์„ ์ƒ์„ฑํ•˜๊ธฐ ์œ„ํ•œ ํ‘œ๊ธฐ๋ฒ•์ด๋‹ค.

 

 

์ €์ž‘์žํ‘œ์‹œ ๋ณ€๊ฒฝ๊ธˆ์ง€ (์ƒˆ์ฐฝ์—ด๋ฆผ)

'Frontend > JavaScript' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€

์›์‹œ ๊ฐ’๊ณผ ๊ฐ์ฒด์˜ ๋น„๊ต  (0) 2024.03.14
์œ ์‚ฌ ๋ฐฐ์—ด ๊ฐ์ฒด, ์ดํ„ฐ๋Ÿฌ๋ธ”, ๋ž˜ํผ ๊ฐ์ฒด  (0) 2024.03.13
ํ•จ์ˆ˜ ์ •์˜ (ํ•จ์ˆ˜ ์„ ์–ธ๋ฌธ, ํ•จ์ˆ˜ ํ‘œํ˜„์‹)  (0) 2024.03.07
ํ˜ธ์ด์ŠคํŒ…(hoisting)  (0) 2024.03.05
var, let, const ์ฐจ์ด  (0) 2024.03.03
    'Frontend/JavaScript' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€
    • ์œ ์‚ฌ ๋ฐฐ์—ด ๊ฐ์ฒด, ์ดํ„ฐ๋Ÿฌ๋ธ”, ๋ž˜ํผ ๊ฐ์ฒด
    • ํ•จ์ˆ˜ ์ •์˜ (ํ•จ์ˆ˜ ์„ ์–ธ๋ฌธ, ํ•จ์ˆ˜ ํ‘œํ˜„์‹)
    • ํ˜ธ์ด์ŠคํŒ…(hoisting)
    • var, let, const ์ฐจ์ด
    wam
    wam

    ํ‹ฐ์Šคํ† ๋ฆฌํˆด๋ฐ”