개발새발개발/JavaScript

JavaScript - 데이터 타입(원시 자료형)

birdsfoot 2025. 1. 5.

데이터 타입

 

1. 원시 자료형(Primitive type)

  •   Number, String, Boolean, null, undefined
  •   변수에 값이 직접 저장되는 자료형
  •   변수에 할당될 때 값이 복사됨
  •   변수간에 서로 영향을 미치지 않음
 
    const a = 'bar'
    console.log(a) // bar

    a.toUpperCase()
    console.log(a) // bar

    let a = 10
    let b = a
    b = 20
    console.log(a) // 10
    console.log(b) // 20

 

 

 

2. 참조 자료형 (Reference type)

 

  •   Objects(object,Array,Function)
  •   객체의 주소가 저장되는 자료형(가변, 주소가 복사)
  •   객체를 생성하면 객체의 메모리 주소를 변수에 할당
  •   변수 간에 서로 영향을 미침
    const obj1 = {name : 'Alice', age : 30}
    const obj2 = obj1
    obj2.age = 40

    console.log(obj1.age) //40
    console.log(obj2.age) //40
 

 

 

원시 자료형

  • Number, String, Boolean, null, undefined

 

Number

  • 정수 또는 실수형 숫자를 표현하는 자료형
  const a = 13
  const b = -5
  const c = 3.14
  const d = 2.998e8 //2.998*10^8 = 299,800,000
  const e = Infinity
  const f = -Infinity
  const g = NaN // Not a Number

 

 

String

  • 텍스트 데이터를 표현하는 자료형
  • '+' 연산자를 사용해 문자열끼리 결합
  • 뺄셈, 곱셈, 나눗셈 불가능
  const firstName = 'Tony'
  const lastName = 'Stark'
  const fullName = firstName + lastName

  console.log(fullName) // TonyStark

 

 

 

null

  • 프로그래머가 의도적으로 '값이 없음'을 나타낼 때 사용
 
  let a = null
  console.log(a) // null

 

 

 

 

underfined

  • 시스템이나 JavaScript 엔진이 '값이 할당되지 않음'을 나타낼 때 사용
  let b
  console.log(b) // undefined

 

 

 

Boolean

  • 조건문 또는 반복문에서 Boolean이 아닌 데이터 타입은 "자동 형변환 규칙"에 따라 true 또는 false로 변환됨

 

 

 

Template literals (템플릿 리터럴)

  • 내장된 표현식을 허용하는 문자열 작성 방식
  • Backtick(``)을 이용하며, 여러 줄에 걸쳐 문자열을 정의할 수도 있고 JavaScript의 변수를 문자열 안에 바로 연결할 수 있음
  • 표현식은 '$'와 중괄호({expression})로 표기
  • ES6+ 부터 지원
  const age = 100
  const massage = `홍길동은 ${age}세 입니다.`
  console.log(message) // 홍길동은 100세입니다.

 

댓글