5.11.4 ์ซ์ ํ์ธ ํจ์
Infinity์ NaN์ ํน๋ณํ ์ซ์๊ฐ ์๋ค. ๋ณ์์ ์๋ ์ซ์๊ฐ ์ด๋ค ์ซ์์ธ์ง ํ์ธํ ๋ ์ฌ์ฉํ๋ค.
isFinite() number๊ฐ ๋ฌดํํ ๊ฐ์ธ์ง ํ์ธ isNaN()ย number๊ฐ NaN์ธ์ง ํ์ธ
๋๋ถ๋ถ์ ํ๋ก๊ทธ๋๋ฐ ์ธ์ด๋ 0์ผ๋ก ์ซ์๋ฅผ ๋๋๋ฉด ์ค๋ฅ๊ฐ ๋ฐ์ํ๋ฉด ์๋์ ๋ฉ์ถ์ง๋ง ์๋ฐ์คํฌ๋ฆฝํธ๋ 0์ผ๋ก ์ซ์๋ฅผ ๋๋๋ฉด Infinity ๊ฐ์ด ๋ค์ด๊ฐ๋ค.
var number = 1 / 0; console.log(number);
isFinite() ํจ์๋ ์ด๋ฐ ๊ฐ์ ๊ตฌํ๋ ํจ์๋ค.
var number2 = 1 / 0; console.log(number + ':' + isFinite(number));
์์๋ฅผ 0์ผ๋ก ๋๋๋ฉด -Infinity๋ค.
//๋ณ์ ์ ์ธ var value = -10 / 0; var value2 = 10 / 0; //์ถ๋ ฅ if (value == Infinity) { console.log('value๋ Infinity์ ๋๋ค.'); } else { console.log('value๋ Infinity๊ฐ ์๋๋๋ค.'); } if (value2 == Infinity) { console.log('value2๋ Infinity์ ๋๋ค.'); } else { console.log('value2๋ Infinity๊ฐ ์๋๋๋ค.'); }
๋ฌดํ๋์ ์๋ฅผ ํ์ธํ ๋๋ isFinite()ํจ์๋ฅผ ์ฌ์ฉํ ๊ฒ.
var number = 10 / 0; console.log(number + ':' + isNaN(number) + ':' + isFinite(number));
์ถ๋ ฅ: Infinity:false:false
//NaN๊ฐ ๋น๊ต if (NaN == NaN) { console.log('NaN == NaN'); } else { console.log('NaN != NaN'); }
์ถ๋ ฅ: NaN != NaN
๋ฐ๋ผ์ NaN์ ํ์ธํ ๋๋ ๋ฐ๋์ isNaN() ํจ์๋ฅผ ์ฌ์ฉํด์ผ ํ๋ค.
//isNaN()ํจ์ ์ฌ์ฉ if (isNaN(NaN)) { console.log('NaN == NaN'); } else { console.log('NaN != NaN'); }












