๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
Frontend/JavaScript

[ ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ(JavaScript) ] ์ „์น˜์—ฐ์‚ฐ์ž์™€ ํ›„์น˜์—ฐ์‚ฐ์ž์— ๋Œ€ํ•ด ์•Œ์•„๋ณด์ž

by YWTechIT 2021. 11. 5.
728x90

๐Ÿ“ ์ „์น˜ ์—ฐ์‚ฐ์ž์™€ ํ›„์น˜ ์—ฐ์‚ฐ์ž์— ๋Œ€ํ•ด ์•Œ์•„๋ณด์ž

๊ฐœ๋… ์ž์ฒด๋Š” ์–ด๋ ค์šด ํŽธ๋„ ์•„๋‹ˆ๊ณ  ๋‚ด์šฉ๋„ ๋งŽ์ง€ ์•Š์€๋ฐ ๊ธฐ๋ก์„ ๋‚จ๊ธฐ๋Š” ์ด์œ ๋Š” ์•Œ๊ณ ๋ฆฌ์ฆ˜ ๋ฌธ์ œ๋ฅผ ํ’€๋‹ค ๋ณด๋ฉด ํ—ท๊ฐˆ๋ฆฌ๋Š” ๊ฒฝ์šฐ๊ฐ€ ์žˆ๊ธฐ ๋•Œ๋ฌธ์ด๋‹ค. ์ „์น˜ ์—ฐ์‚ฐ์ž์™€ ํ›„์น˜ ์—ฐ์‚ฐ์ž๋ฅผ ์ž˜ ํ™œ์šฉํ•œ ๋ฌธ์ œ๋Š” ํˆฌ ํฌ์ธํ„ฐ ๊ฐœ๋…์„ ํ™œ์šฉํ•œ ๋‘ ๋ฐฐ์—ด ํ•ฉ์น˜๊ธฐ ๋ฌธ์ œ์˜€๋‹ค.

 

  1. ์ „์น˜์—ฐ์‚ฐ์ž(prefix form): ์—ฐ์‚ฐ์ž(++x, --x)๊ฐ€ ๋ณ€์ˆ˜ ์•ž์— ์˜ค๋Š”๊ฒฝ์šฐ ์ „์น˜ ํ˜•ํƒœ์ด๊ณ , ์ฆ๊ฐ€/๊ฐ์†Œ๊ฐ€ ๋จผ์ € ์ด๋ฃจ์–ด์ง€๊ณ  ๊ฐ’์„ ๋ฆฌํ„ดํ•จ.
  2. ํ›„์น˜ ์—ฐ์‚ฐ์ž(postfix form): ์—ฐ์‚ฐ์ž(x++, x--)๊ฐ€ ๋ณ€์ˆ˜ ๋’ค์— ์˜ค๋Š”๊ฒฝ์šฐ ํ›„์น˜ ํ˜•ํƒœ์ด๊ณ , ์ฆ๊ฐ€/๊ฐ์†Œ ์ด์ „์— ๋จผ์ € ๊ฐ’์„ ๋ฆฌํ„ดํ•จ.

 

728x90

 

์œ„์—์„œ ์‚ดํŽด๋ณธ ๊ฐœ๋…์„ ํ† ๋Œ€๋กœ ์ž ๊น ๋ฌธ์ œ๋ฅผ ํ’€์–ด๋ณด์ž. ์–ด๋–ค ๋‹ต์ด ๋‚˜์˜ฌ์ง€ ํ•œ๋ฒˆ ์ƒ๊ฐํ•ด๋ณด์ž. ์ž˜ ๋ชจ๋ฅด๊ฒ ๋‹ค๋ฉด ๋“œ๋ž˜๊ทธ๋ฅผ ํ•ด๋ณด์ž.  ์˜ˆ์ œ 1์˜ counter์™€ a์˜ ๊ฐ’ ๋ชจ๋‘ 2๋‹ค. ์™œ๋ƒํ•˜๋ฉด ++counter๋กœ ์ธํ•ด counter๋„ ๊ฐ’์ด 1์ฆ๊ฐ€ํ–ˆ๊ณ , a๋Š” ์ฆ๊ฐ€ํ•œ ๊ฐ’์„ ๋ณ€์ˆ˜๋กœ ์ €์žฅํ–ˆ๊ธฐ ๋•Œ๋ฌธ์ด๋‹ค. ์˜ˆ์ œ 2๋Š” ์กฐ๊ธˆ ๋‹ค๋ฅด๊ฒŒ counter์˜ ๊ฐ’์€ 1, b์˜ ๊ฐ’์€ 2์ด๋‹ค. ์™œ๋ƒํ•˜๋ฉด counter++๋Š” counter๋ณ€์ˆ˜์˜ ๊ฐ’์€ ๋ณ€ํ•จ์ด ์—†๊ณ  b์˜ ๋ณ€์ˆ˜๋งŒ counter์—์„œ 1 ๋”ํ•œ ๊ฐ’์„ ๋ณ€์ˆ˜๋กœ ์ง€์ •ํ–ˆ๊ธฐ ๋•Œ๋ฌธ์ด๋‹ค.

// ์˜ˆ์ œ 1
let counter = 1;
let a = ++counter;
console.log(counter, a);
๐Ÿ‘‰๐Ÿฝ 2 2
// ์˜ˆ์ œ 2
let counter = 1;
let b = counter++;
console.log(counter, b);
๐Ÿ‘‰๐Ÿฝ 1 2
๋ฐ˜์‘ํ˜•

๋Œ“๊ธ€