JavaScript์์ ์ฐ์ฐ์(Operators)๋ ๋ณ์๋ ๊ฐ์ ๋ํด ์ฐ์ฐ์ ์ํํ๋ ๊ธฐํธ์ ๋๋ค. ๋ค์ํ ์ฐ์ฐ์๋ฅผ ์ฌ์ฉํ์ฌ ๊ฐ์ ๊ณ์ฐํ๊ฑฐ๋, ๋น๊ตํ๊ณ , ๋ ผ๋ฆฌ์ ์ธ ํ๋จ์ ๋ด๋ฆด ์ ์์ต๋๋ค. ์ด๋ฒ ํฌ์คํธ์์๋ JavaScript์์ ์์ฃผ ์ฌ์ฉํ๋ ์ฐ์ฐ์๋ค์ ์ข ๋ฅ๋ณ๋ก ์ดํด๋ณด๊ฒ ์ต๋๋ค.
1. ์ฐ์ ์ฐ์ฐ์ (Arithmetic Operators)
์ฐ์ ์ฐ์ฐ์๋ ์ซ์ ๊ฐ์ ๊ธฐ๋ณธ์ ์ธ ์ฐ์ฐ์ ์ํํ๋ ๋ฐ ์ฌ์ฉ๋ฉ๋๋ค. ๋ค์์ ์ฃผ์ ์ฐ์ ์ฐ์ฐ์์ ๋๋ค:
+(๋ํ๊ธฐ): ๋ ๊ฐ์ ๋ํฉ๋๋ค.let sum = 10 + 5; // 15-(๋นผ๊ธฐ): ์ฒซ ๋ฒ์งธ ๊ฐ์์ ๋ ๋ฒ์งธ ๊ฐ์ ๋บ๋๋ค.let difference = 10 - 5; // 5*(๊ณฑํ๊ธฐ): ๋ ๊ฐ์ ๊ณฑํฉ๋๋ค.let product = 10 * 5; // 50/(๋๋๊ธฐ): ์ฒซ ๋ฒ์งธ ๊ฐ์ ๋ ๋ฒ์งธ ๊ฐ์ผ๋ก ๋๋๋๋ค.let quotient = 10 / 5; // 2%(๋๋จธ์ง): ์ฒซ ๋ฒ์งธ ๊ฐ์ ๋ ๋ฒ์งธ ๊ฐ์ผ๋ก ๋๋ ๋๋จธ์ง๋ฅผ ๋ฐํํฉ๋๋ค.let remainder = 10 % 3; // 1
2. ํ ๋น ์ฐ์ฐ์ (Assignment Operators)
ํ ๋น ์ฐ์ฐ์๋ ๋ณ์์ ๊ฐ์ ํ ๋นํ๊ฑฐ๋, ์ฐ์ฐ์ ํตํด ๊ฐ์ ํ ๋นํ ๋ ์ฌ์ฉ๋ฉ๋๋ค. ๊ธฐ๋ณธ์ ์ธ ํ ๋น ์ฐ์ฐ์๋ =์ด๋ฉฐ, ๋ค๋ฅธ ์ฐ์ฐ๊ณผ ๊ฒฐํฉํ์ฌ ์ฌ์ฉํ ์๋ ์์ต๋๋ค:
=(ํ ๋น): ๋ณ์์ ๊ฐ์ ํ ๋นํฉ๋๋ค.let x = 10;+=(๋ํ ํ ํ ๋น): ๊ธฐ์กด ๋ณ์ ๊ฐ์ ๋ํ ๊ฐ์ ํ ๋นํฉ๋๋ค.x += 5; // x = x + 5-=(๋บ ํ ํ ๋น): ๊ธฐ์กด ๋ณ์ ๊ฐ์์ ๋บ ๊ฐ์ ํ ๋นํฉ๋๋ค.x -= 5; // x = x - 5*=(๊ณฑํ ํ ํ ๋น): ๊ธฐ์กด ๋ณ์ ๊ฐ์ ๊ณฑํ ๊ฐ์ ํ ๋นํฉ๋๋ค.x *= 5; // x = x * 5/=(๋๋ ํ ํ ๋น): ๊ธฐ์กด ๋ณ์ ๊ฐ์ ๋๋ ๊ฐ์ ํ ๋นํฉ๋๋ค.x /= 5; // x = x / 5%=(๋๋จธ์ง๋ฅผ ๊ตฌํ ํ ํ ๋น): ๊ธฐ์กด ๋ณ์ ๊ฐ์ ๋๋จธ์ง๋ฅผ ๊ตฌํ ๊ฐ์ ํ ๋นํฉ๋๋ค.x %= 5; // x = x % 5
3. ๋น๊ต ์ฐ์ฐ์ (Comparison Operators)
๋น๊ต ์ฐ์ฐ์๋ ๋ ๊ฐ์ ๋น๊ตํ๊ณ , ๊ทธ ๊ฒฐ๊ณผ๋ก true ๋๋ false๋ฅผ ๋ฐํํฉ๋๋ค. ์ฃผ๋ก ์กฐ๊ฑด๋ฌธ์์ ์ฌ์ฉ๋ฉ๋๋ค:
==(๋๋ฑ): ๋ ๊ฐ์ด ๋๋ฑํ์ง๋ฅผ ๋น๊ตํฉ๋๋ค.5 == '5'; // true===(์ผ์น): ๋ ๊ฐ์ด ๋์ผํ ํ์ ์ด๊ณ , ๊ฐ๋ ์ผ์นํ๋์ง๋ฅผ ๋น๊ตํฉ๋๋ค.5 === '5'; // false!=(๋ถ๋ฑ): ๋ ๊ฐ์ด ๋๋ฑํ์ง ์์์ง๋ฅผ ๋น๊ตํฉ๋๋ค.5 != '5'; // false!==(๋ถ์ผ์น): ๋ ๊ฐ์ด ์ผ์นํ์ง ์๋์ง๋ฅผ ๋น๊ตํฉ๋๋ค.5 !== '5'; // true>(ํฌ๋ค): ์ฒซ ๋ฒ์งธ ๊ฐ์ด ๋ ๋ฒ์งธ ๊ฐ๋ณด๋ค ํฐ์ง๋ฅผ ๋น๊ตํฉ๋๋ค.10 > 5; // true<(์๋ค): ์ฒซ ๋ฒ์งธ ๊ฐ์ด ๋ ๋ฒ์งธ ๊ฐ๋ณด๋ค ์์์ง๋ฅผ ๋น๊ตํฉ๋๋ค.10 < 5; // false>=(ํฌ๊ฑฐ๋ ๊ฐ๋ค): ์ฒซ ๋ฒ์งธ ๊ฐ์ด ๋ ๋ฒ์งธ ๊ฐ๋ณด๋ค ํฌ๊ฑฐ๋ ๊ฐ์์ง๋ฅผ ๋น๊ตํฉ๋๋ค.10 >= 5; // true<=(์๊ฑฐ๋ ๊ฐ๋ค): ์ฒซ ๋ฒ์งธ ๊ฐ์ด ๋ ๋ฒ์งธ ๊ฐ๋ณด๋ค ์๊ฑฐ๋ ๊ฐ์์ง๋ฅผ ๋น๊ตํฉ๋๋ค.10 <= 5; // false
4. ๋ ผ๋ฆฌ ์ฐ์ฐ์ (Logical Operators)
๋ ผ๋ฆฌ ์ฐ์ฐ์๋ ๋ ผ๋ฆฌ์ ํ๋จ์ ๋ด๋ฆฌ๊ธฐ ์ํด ์ฌ์ฉ๋ฉ๋๋ค. ์กฐ๊ฑด๋ฌธ๊ณผ ํจ๊ป ์์ฃผ ์ฌ์ฉ๋๋ฉฐ, ์ฌ๋ฌ ์กฐ๊ฑด์ ๊ฒฐํฉํ ๋ ์ ์ฉํฉ๋๋ค:
&&(AND): ๋ ์กฐ๊ฑด์ด ๋ชจ๋ ์ฐธ์ธ ๊ฒฝ์ฐ์๋งtrue๋ฅผ ๋ฐํํฉ๋๋ค.true && false; // false||(OR): ๋ ์กฐ๊ฑด ์ค ํ๋๋ผ๋ ์ฐธ์ด๋ฉดtrue๋ฅผ ๋ฐํํฉ๋๋ค.true || false; // true!(NOT): ์กฐ๊ฑด์ ์ฐธ/๊ฑฐ์ง์ ๋ฐ์ ์ํต๋๋ค.!true; // false
5. ๊ธฐํ ์ฐ์ฐ์ (Other Operators)
์์์ ์ค๋ช ํ ์ฃผ์ ์ฐ์ฐ์ ์ธ์๋ JavaScript์๋ ๋ค์ํ ์ฐ์ฐ์๊ฐ ์กด์ฌํฉ๋๋ค. ๋ช ๊ฐ์ง ์ค์ํ ์ฐ์ฐ์๋ฅผ ์ถ๊ฐ๋ก ์๊ฐํฉ๋๋ค:
?(์ผํญ ์ฐ์ฐ์): ์กฐ๊ฑด์ ๋ฐ๋ผ ๊ฐ์ ๋ฐํํฉ๋๋ค.let result = (x > 10) ? 'ํฌ๋ค' : '์๋ค';typeof: ๋ณ์๋ ๊ฐ์ ๋ฐ์ดํฐ ํ์ ์ ๋ฐํํฉ๋๋ค.typeof 10; // "number"instanceof: ๊ฐ์ฒด๊ฐ ํน์ ํด๋์ค์ ์ธ์คํด์ค์ธ์ง ํ์ธํฉ๋๋ค.object instanceof Array; // true
๊ฒฐ๋ก
JavaScript ์ฐ์ฐ์๋ ์ฝ๋๋ฅผ ์์ฑํ ๋ ๊ฐ์ฅ ๊ธฐ๋ณธ์ ์ด๊ณ ์ค์ํ ๋๊ตฌ์ ๋๋ค. ์ฐ์ ์ฐ์ฐ์๋ถํฐ ๋น๊ต, ๋ ผ๋ฆฌ, ๊ธฐํ ์ฐ์ฐ์๊น์ง ๋ค์ํ ์ข ๋ฅ์ ์ฐ์ฐ์๋ฅผ ์ฌ์ฉํ์ฌ ๋ฐ์ดํฐ๋ฅผ ์ฒ๋ฆฌํ๊ณ ๋ก์ง์ ๊ตฌํํ ์ ์์ต๋๋ค. ์ด๋ฒ ํฌ์คํธ์์ ์ค๋ช ํ ์ฐ์ฐ์๋ค์ ์ ์ดํดํ๊ณ ํ์ฉํ๋ฉด, JavaScript ์ฝ๋๋ฅผ ๋์ฑ ํจ์จ์ ์ด๊ณ ๋ช ํํ๊ฒ ์์ฑํ ์ ์์ ๊ฒ์ ๋๋ค.
๋๊ธ ์ฐ๊ธฐ