Part 1. JavaScript 기초 Ch 1. 변수와 타입

HanSungUk·2022년 4월 26일
0

Javascript

목록 보기
1/16
post-thumbnail

Part 1. JavaScript 기초 Ch 1. 변수와 타입 입니다.

현재 코드스테이츠 강의를 통해 프론트엔드를 학습하고 있습니다.
본 포스트는 해당 강의에 대한 내용 정리를 목적으로 합니다.

학습목표

  • 변수 사용은 데이터를 편리하게 저장하고 꺼내 쓰는 것임을 이해한다.
  • 자바스크립트에서 변수의 선언과 값의 할당에 대해서 설명할 수 있다.
  • =가 "같다"라는 의미가 아니라 할당 연산자임을 이해한다.
  • 원시자료형 string, number, boolean, undefined의 의미를 이해할 수 있다.
  • 타입마다 다른 속성과 메서드가 있다는 것을 이해할 수 있다.
    -typeof연산자를 활용하여 특정 값의 타입을 확인할 수 있다.
  • 비교시 엄밀한 비교(===과 !==)의 필요성을 이해할 수 있다.

1. 변수(Variable)의 이해

변수(Variable)는 상황에 따라 변할 수 있는 값을 말하며,
프로그래밍 세계에서는 이름(Label)이 붙은 값을 의미합니다.

  • 변수를 사용한다는 의미
    크기가 동일한 데이터 보관함(메모리)의 데이터를 재사용한다는 것입니다.
    여기서, 변수는 각 보관함(메모리)의 이름이라고 정의할 수 있습니다.
  • 변수를 사용하는 순서
    1. 보관함(메모리) 자리 확보 => 변수 선언(declaration)
      선언은 let 키워드를 이용하며, 한 번만 사용할 수 있습니다. let age;
    2. 보관함(메모리)에 데이터 저장 =>변수 할당(assignment)
      할당은 = 연산자를 사용하며, "같다"는 의미가 아닌 대입(assign)을 의미합니다. age = 12;
    3. 변수 선언과 할당을 동시에 할 수도 있습니다.
      let age = 12;
    4. 표현식(expression)에서 이러한 변수들을 사용할 수 있습니다.
      표현식(expression)이란 하나의 값으로 표현되는 코드를 의미합니다.
let num1, num2, result;
num1 = 5;
num2 = 7;
result = num1*num2;

2. 타입의 이해

타입(data type)이란 프로그램에서 다룰 수 있는 값의 종류를 의미합니다.
자바스크립트의 기본 타입은 크게 원시 타입(primitive type)과 객체 타입(object)로 구분할 수 있습니다.

  • 원시 타입(primitive type)
  1. 숫자(number): 정수와 실수를 따로 구분하지 않고, 모든 수를 실수로 표현합니다. -(2^53-1)부터 2^53-1까지의 수 입니다.
  2. BigInt : number의 안전 한계를 넘어서는 큰 정수도 안전하게 저장하고 연산할 수 있습니다. 참고로 BigInt는 Number와 혼합해 연산할 수 없습니다.
  3. 문자열(string): 큰따옴표("")나 작은따옴표('')로 둘러싸인 문자의 집합을 의미합니다.
  4. 불리언(boolean): 참(true)과 거짓(false)을 표현합니다.
  5. 심볼(symbol): 심볼은 유일하고 변경할 수 없는 타입으로 객체의 프로퍼티를 위한 식별자로 사용할 수 있습니다.
  6. undefined: null과는 달리 '아무 값도 할당받지 않은 상태'를 의미합니다. 따라서 변수를 선언한 이후 값을 할당하지 않은 변수를 참조하면 undefined가 반환됩니다.
  7. null: 변수에 '의도적으로 값이 없음'을 명시하기 위한 데이터 타입입니다. null 타입의 값은 null이 유일합니다.
  • typeof 연산자를 통해 타입 확인하기
typeof 10; // number 타입
typeof "문자열" // string 타입
typeof true // boolean 타입
typeof undefined // undefined 타입
typeof null // object 타입 -> 원래 원시 타입이지만 JS의 초기 버전 버그입니다.
  • 객체 타입(object)
    객체(object)란 실생활에서 우리가 인식할 수 있는 사물로 이해할 수 있습니다. 객체란 이름(name)과 값(value)으로 구성된 프로퍼티(property)의 정렬되지 않은 집합입니다. 이때 프로퍼티의 값으로 함수가 올 수도 있는데, 이러한 프로퍼티를 메소드(method)라고 합니다.
let dog = "말티즈" // 일반적인 변수의 선언과 할당
let smallDog = {name: "쵸파", age: 5, weight: 5.3}
// 객체는 많은 정보를 가지는 변수 중 하나이다.

0개의 댓글