type

JS์—๋Š” 8๊ฐ€์ง€์˜ ์ž๋ฃŒํ˜•์ด ์กด์žฌํ•œ๋‹ค.

์›์‹œ ์ž๋ฃŒํ˜•

  • ๋ฌธ์ž (string)

    • ํ…œํ”Œ๋ฆฟ ๋ฆฌํ„ฐ๋Ÿด : ${...} ์„๋ฐฑํ‹ฑ์œผ๋กœ ๊ฐ์‹ธ ๋ฌธ์ž์—ด ์ค‘๊ฐ„์— ํ‘œํ˜„์‹์„ ํ‘œ์‹œํ•˜๋Š” ๋ฐฉ์‹

      let num = 111;
      alert(`num is ${num}`); //num is 111
    • length : ๋ฌธ์ž์—ด ๊ธธ์ด

      • str.length()๊ฐ€ ์•„๋‹Œ str.length์ด๋‹ค.

        ํ•จ์ˆ˜๊ฐ€ ์•„๋‹ˆ๋ผ ์ˆซ์ž๊ฐ€ ์ €์žฅ๋˜๋Š” ํ”„๋กœํผํ‹ฐ์ด๊ธฐ ๋•Œ๋ฌธ

    • for ... of ๋ฌธ ์ด์šฉํ•˜์—ฌ ๋ฌธ์ž์— ์ ‘๊ทผ๊ฐ€๋Šฅ

      for (let char of 'hello') {
        alert(char); // h,e,l,l,o
      }
    • ๋ฌธ์ž์—ด์€ ์ˆ˜์ •์ด ๋ถˆ๊ฐ€๋Šฅํ•˜๋‹ค.

      let str = 'hi';
      str[0] = 'B'; //error
    • str.toLowerCase(),str.toUpperCase() : ๋ฌธ์ž์—ด ๋Œ€์†Œ๋ฌธ์ž ๋ณ€๊ฒฝ

    • str.indexOf(substr,pos) : ๋ถ€๋ถ„ ๋ฌธ์ž์—ด ์œ„์น˜ ์ฐพ๊ธฐ

      str์—์„œ pos๋ฒˆ์งธ substr์˜ ์‹œ์ž‘ ์œ„์น˜๋ฅผ ๋ฐ˜ํ™˜ ์—†์œผ๋ฉด -1๋ฐ˜ํ™˜

      let str = 'Widget with id';
      alert(str.indexOf('id', 2)); // 12
    • str.includes(substr,pos) : ๋ถ€๋ถ„ ๋ฌธ์ž์—ด ํฌํ•จ ์—ฌ๋ถ€ ํ™•์ธ

      str์—์„œ pos๋ฒˆ์งธ substr์ด ์žˆ์œผ๋ฉด true, ์—†์œผ๋ฉด false

    • str.slice(start,end) : ๋ถ€๋ถ„ ๋ฌธ์ž์—ด ์ถ”์ถœ

      str์—์„œ start๋ถ€ํ„ฐ end๊นŒ์ง€ ์ถ”์ถœ

      end๋Š” ์ƒ๋žต ๊ฐ€๋Šฅํ•˜๋ฉฐ ์ƒ๋žต์‹œ ๋๊นŒ์ง€

      start์™€ end๋Š” ์Œ์ˆ˜๋„ ํ—ˆ์šฉํ•˜๋ฉฐ end๋Š” start๋ณด๋‹ค ์ปค์•ผํ•œ๋‹ค.

    • str.substring(start, end) : ๋ถ€๋ถ„ ๋ฌธ์ž์—ด ์ถ”์ถœ

      str.slice์™€ ๋น„์Šทํ•˜๋‚˜ start๊ฐ€ end๋ณด๋‹ค ์ปค๋„ ๊ดœ์ฐฎ์œผ๋ฉฐ ์Œ์ˆ˜๋ฅผ ํ—ˆ์šฉํ•˜์ง€ ์•Š๋Š”๋‹ค.

    • str.substr(start,length) : ๋ถ€๋ถ„ ๋ฌธ์ž์—ด ์ถ”์ถœ

      start๋ถ€ํ„ฐ length๋งŒํผ ๋ฌธ์ž์—ด์„ ์ถ”์ถœํ•˜๊ณ  start๋Š” ์Œ์ˆ˜๋ฅผ ํ—ˆ์šฉํ•˜๋‚˜ substr์€ ๊ตฌ์‹ ์Šคํฌ๋ฆฝํŠธ์— ๋Œ€์‘ํ•˜๊ธฐ ์œ„ํ•ด ๋‚จ๊ฒจ๋†“์€ ๋ฉ”์„œ๋“œ์ด๋‹ค.

    • str.codePointAt(pos) : pos์— ์œ„์น˜ํ•œ ๊ธ€์ž์˜ ์ฝ”๋“œ๋ฅผ ๋ฐ˜ํ™˜

      alsert('z'.codePointAt(0)); //122
    • String.fromCodePoint(code) : ์ˆซ์ž ํ˜•์‹์˜ code์— ๋Œ€์‘ ๋˜๋Š” ๊ธ€์ž ๋ฐ˜ํ™˜

      alert(String.fromCodePoint(122)); // z
  • ์ˆซ์ž (number)

    • e๋ฅผ ์ด์šฉํ•ด 0์˜ ๊ฐœ์ˆ˜ ํ‘œ์‹œ ๊ฐ€๋Šฅ

      let billion = 1e9; //10์–ต
      alert(7.3e9); //73์–ต
      let ms = 1e-6;
      0.000001;
    • 16์ง„์ˆ˜๋Š” 0x๋กœ ํ‘œํ˜„

    • 2์ง„์ˆ˜๋Š” Ob

    • 8์ง„์ˆ˜๋Š” 0o

    • ์ˆซ์ž๋ฅผ ๋ฌธ์ž๋กœ ๋ฐ”๊ฟ€๋•Œ num.toString(base)์ด์šฉ

      base๋Š” 2~36์œผ๋กœ ๋ฐ”๊ฟ€ ์ง„๋ฒ•

      ๋ณ€์ˆ˜๋ฅผ ์ด์šฉํ•˜๋Š” ๊ฒƒ์ด ์•„๋‹Œ ์ˆซ์ž ๊ทธ๋Œ€๋กœ ์ด์šฉํ• ๋•Œ๋Š” .์„ ํ•œ๊ฐœ ๋” ์ด์šฉํ•˜๊ฑฐ๋‚˜ ๊ด„ํ˜ธ()๋กœ ๋ฌถ์–ด์ฃผ๋ฉด ์ด์šฉ๊ฐ€๋Šฅ

      let num = 255;
      alert(num.toString(16)); //ff
      (255).toString(16); //ff
      (255).toString(16); //ff
    • Math.floor(num) : ์†Œ์ˆ˜์  ์ฒซ์งธ ์ž๋ฆฌ์—์„œ ๋ฒ„๋ฆผ

    • Math.ceil(num) : ์†Œ์ˆ˜์  ์ฒซ์งธ์ž๋ฆฌ์—์„œ ์˜ฌ๋ฆผ

    • Math.round(num) : ์†Œ์ˆ˜์  ์ฒซ์งธ์ž๋ฆฌ์—์„œ ๋ฐ˜์˜ฌ๋ฆผ

    • Math.trunc(num) : ์†Œ์ˆ˜ ๋ฌด์‹œ

    • num.toFixed(x) : ์†Œ์ˆ˜ x์ž๋ฆฌ๊นŒ์ง€ ๋ฐ˜์˜ฌ๋ฆผ ํ›„ ๋ฌธ์ž์—ด ๋ฐ˜ํ™˜

    • ์ˆซ์ž๊ฐ€ ๋„ˆ๋ฌด ํฌ๋ฉด Infinity์ฒ˜๋ฆฌ

    • js์—์„œ๋Š” ์ˆซ์ž์˜ ๋ถ€ํ˜ธ๋ฅผ ๋‹จ์ผ๋น„ํŠธ๋กœ ์ €์žฅํ•˜๊ธฐ ๋•Œ๋ฌธ์— 0๊ณผ -0๋‘์ข…๋ฅ˜์˜ 0์ด ์กด์žฌํ•œ๋‹ค. (๋Œ€๋ถ€๋ถ„์˜ ์—ฐ์‚ฐ์€ ๋™์ผ ์ทจ๊ธ‰)

    • NaN์€ ์ž๊ธฐ ์ž์‹ ์„ ํฌํ•จํ•˜์—ฌ ์–ด๋–ค ๊ฐ’๊ณผ๋„ ๊ฐ™์ง€ ์•Š๋‹ค.

      alert(NaN === NaN); //false
      • isNaN(value) : value๋ฅผ ์ˆซ์ž๋กœ ๋ณ€ํ™˜ํ›„ NaN ์ธ์ง€ ํŒ๋ณ„ (value๊ฐ€ false๋ฉด ์ˆซ์ž)

      • inFinte(value) : value๋ฅผ ์ˆซ์ž๋กœ ๋ณ€ํ™˜ํ›„ NaN/Infinity/-Infinity์ธ์ง€ ํŒ๋ณ„ (value๊ฐ€ true๋ฉด ์ผ๋ฐ˜ ์ˆซ์ž)

    • Math.random() : 0๊ณผ 1์‚ฌ์ด ๋‚œ์ˆ˜ ๋ฐ˜ํ™˜

    • Math.max(a,b,...) : ์ตœ๋Œ€๊ฐ’ ๋ฐ˜ํ™˜

    • Math.min(a,b,...) : ์ตœ์†Ÿ๊ฐ’ ๋ฐ˜ํ™˜

    • Math.pow(n,pow) : n์˜ pow ์ œ๊ณฑ ๋ฐ˜ํ™˜

  • bigint

  • boolean

  • null

  • undefined

  • symbol

    ์‹ฌ๋ณผ์€ ์œ ์ผํ•œ ์‹๋ณ„์ž๋ฅผ ๋งŒ๋“ค๊ณ  ์‹ถ์„๋•Œ ์‚ฌ์šฉ

    let id = Symbol();
    let id1 = Symbol('name'); //์‹ฌ๋ณผ ์ด๋ฆ„์ด๋ผ ๋ถˆ๋ฆฌ๋Š” ์„ค๋ช…์„ ๋ถ™์ผ ์ˆ˜๋„ ์žˆ๋‹ค. ์—ฌ๊ธฐ์„œ name์ด ์„ค๋ช… ๋ถ€๋ถ„

    ์‹ฌ๋ณผ์€ ์œ ์ผ์„ฑ์ด ๋ณด์žฅ๋˜๋Š” ์ž๋ฃŒํ˜•์ด๊ธฐ ๋•Œ๋ฌธ์—, ์„ค๋ช…์ด ๋™์ผํ•œ ์‹ฌ๋ณผ์„ ์—ฌ๋Ÿฌ๊ฐœ๋งŒ๋“ค๋”๋ผ๋„ ๊ฐ ์‹ฌ๋ณผ๊ฐ’์€ ๋‹ค๋ฅด๋‹ค.

    ๋˜ํ•œ, ์‹ฌ๋ณผ์€ ๋ฌธ์žํ˜•์œผ๋กœ ์ž๋™ ํ˜•๋ณ€ํ™˜์ด ๋˜์ง€ ์•Š๋Š”๋‹ค. ๊ตณ์ด ์ถœ๋ ฅํ•ด์•ผ๊ฒ ๋‹ค๋ฉด .toString()ํ•จ์ˆ˜ ์ด์šฉํ•˜๊ฑฐ๋‚˜ .description์„ ์ด์šฉํ•˜๋ฉด ์„ค๋ช…๋งŒ ๋ณด์—ฌ์ค„ ์ˆ˜ ์žˆ๋‹ค.

    let id1 = Symbol('id1');
    let id2 = Symbol('id2');
    
    alert(id == id2); //false
    alert(id1); //error
    alert(id1.toString()); //Symbol(id)

๊ฐ์ฒดํ˜•

ํ•จ์ˆ˜๋„ ๊ฐ์ฒด์˜ ์ผ์ข…์ด๋‹ค.

ํ•จ์ˆ˜๋ฅผ ํ”„๋กœํผํ‹ฐ๋กœ ์ €์žฅ์ด ๊ฐ€๋Šฅ

js๋Š” ๋‚ ์งœ, ์˜ค๋ฅ˜, ์‹œ๊ฐ„, HTML ์š”์†Œ ๋“ฑ์„ ๋‹ค๋ฃฐ ์ˆ˜ ์žˆ๊ฒŒ ๋‚ด์žฅ ๊ฐ์ฒด๋˜ํ•œ ์ œ๊ณต

Array๋„ ๊ฐ์ฒดํ˜•์— ์†ํ•œ๋‹ค.

์›์‹œ ๋ž˜ํผ ๊ฐ์ฒด

์›์‹œ๊ฐ’์ด ๋ฉ”์„œ๋“œ๋‚˜ ํ”„๋กœํผํ‹ฐ์— ์ ‘๊ทผํ•  ์ˆ˜ ์žˆ๊ฒŒ ์ถ”๊ฐ€ ๊ธฐ๋Šฅ์„ ์ œ๊ณตํ•ด์ฃผ๋Š” ํŠน์ˆ˜ ๊ฐœ์ฒด

String,Number,Boolean,Symbol ๊ณผ ๊ฐ™๋‹ค.

์•„๋ž˜์™€ ๊ฐ™์ด ์›์‹œ๊ฐ’์ธ stringํ˜•์˜ ๋ณ€์ˆ˜์— ๋ฉ”์„œ๋“œ๋ฅผ ์ ‘๊ทผํ•  ์ˆ˜ ์žˆ๊ฒŒ ๋„์™€์ค€๋‹ค.

let str = 'hello';
alert(str.toUpperCase()); //HELLO

/*์›์‹œ๊ฐ’์œผ๋กœ toUpperCase์— ์ ‘๊ทผํ•˜๋Š” ์ˆœ๊ฐ„ ๋ž˜ํผ ๊ฐ์ฒด๊ฐ€ ์ž์ฒด์ ์œผ๋กœ ๋งŒ๋“ค์–ด์ง€๊ณ  ์ด๋ฅผ ์ด์šฉํ•ด ๋ฉ”์„œ๋ฅด๋ฅผ ์ ‘๊ทผํ•˜์—ฌ ๋ฌธ์ž์—ด์„ ๋ฐ˜ํ™˜ํ›„ ๋ž˜ํผ ๊ฐ์ฒด๋Š” ์ž๋™ ์†Œ๋ฉธ๋œ๋‹ค.*/

Last updated