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