type-conversions
๋๋ถ๋ถ ์๋ํ๋ณํ์ผ๋ก ์ ์ ํ ์๋ฃํ์ ๋ง๊ฒ ํ๋ณํ์ด ์ํ๋๋ค.
๋ช
์์ ํ๋ณํ
์๋์ ๊ฐ์ด ๋ช ์์ ์ผ๋ก ํ๋ณํ์ ์ํํ๋ ๊ฒ
String(value) : value๋ฅผ string์ผ๋ก ๋ณํ
Number(value) : ์ซ์๋ก ๋ฐํํ๋ ์ซ์๊ฐ ์๋์ฌ์ ๋ณํํ ์ ์๋ ๊ฒฝ์ฐ NaN ๋ฐํ. value ๊ฐ์ ๋ฐ๋ฅธ ๋ฐํ - undefined : Nan - null : 0 - true/false : 1/0 - String : number / Nan
Boolean(value ) : 0, null, undefined, NaN ์ false . ๊ทธ ์ธ๋ true
์๋ํ๋ณํ ์์ฉ
string์ ์ซ์๋ก ๋ณํ
+String
1*String
String / 1
alert(typeof +'11'); //number alert(typeof 1 * '11'); //number alert(typeof '11' / 1); //number
์ด ๋ฐฉ๋ฒ์ ๋ฌธ์๊ฐ ์ซ์๊ฐ ์๋๋ผ๋ฉด ํ๋ณํ์ด ์คํจํ์ฌ
NaN
์ ๋ฐํํ๋ค.
์ด๋ด๋๋ parseInt()
, parseFloat()
์ด์ฉํ์ฌ ์์์ ๋ถํฐ ์ฝ์ ์ ์๋ ์๊น์ง๋ง ๋ฐํ
alert(+'100px'); //NaN
alert(parseInt('100px')); //100
alert(parseInt('12.3')); // 12, ์ ์ ๋ถ๋ถ๋ง ๋ฐํ
alert(parseFloat('12.3.4')); // 12.3, ๋ ๋ฒ์งธ ์ ์์ ์ซ์ ์ฝ๊ธฐ๋ฅผ ๋ฉ์ถฅ๋๋ค.
alert(parseInt('a123')); // NaN,
์์์ ๋ง์ง๋ง ๊ฒฝ์ฐ์ ๊ฐ์ด ์ฒซ ๋ฌธ์๋ถํฐ๊ฐ ์ซ์๊ฐ ์๋๋ผ ์ฝ์ ์ ์๋ ์ซ์๊ฐ ์์๋๋ NaN์ ๋ฐํ
์ง๋ฒ์ 10
์ด ๊ธฐ๋ณธ์ผ๋ก ๋ค๋ฅธ ์ง๋ฒ์ผ๋ก ๋ณํํ๊ณ ์ ํ๋ค๋ฉด parseInt('0xff',16)
๊ณผ ๊ฐ์ด ๋๋ฒ์งธ ์ธ์ ์
๋ ฅํด์ฃผ๋ฉด๋๋ค.
Last updated