TIL 1주차 2일 - 1.변수 , 2.타입

Sang heon lee·2021년 5월 11일
0

TIL 리스트

목록 보기
2/60

학습 내용

가. 변수

  • 변수는 선언과 데이터의 할당이 필요

  • '=' 할당 연산자

  • let num; // 변수의 선언
    num = 10 ; // 데이터 할당

  • let num = 10 ; // 키워드 변수이름 = 데이터(값)

  • 키워드 의 정류

    • var : 과거에 사용하던 방식 이라 하나 아직도 많이 쓰이는 듯?
    • let : 현재 제일 많이 쓰이며 데이터가 변경 가능
    • const : 변경이 불가능, 고정 시켜야 할 데이터에 사용
  • 변수 : 변경 가능
    상수 : 한번 지정한 후 변경 불가능
    불변값 : 이미 지정이 되어 있는 값. (number, string, boolean 등)

나. 타입

  • 정적 타입 언어(static typed language) vs 동적 타입 언어(dynamic typed language)
    • 정적 타입 언어 : 변수와 데이터의 타입이 일치(ex:java)
      int num = 100;
      char ch = 'a';
    • 동적 타입 언어 : 변수의 타입 상관없이 모든 데이터 할당 가능(ex : javascript)
      let num = 100;
      let ch = 'a';
  • 원시 자료형(Primitive type) vs 참조 자료형(Reference type)
    • 원시 자료형
      • 변수에 데이터가 할당될 때 메모리에 데이터를 바로 저장(변경)
      • 6가지 타입이 존재 : string, number, boolean, null, undefined, sysmbol
      • Access by value
    • 참조 자료형
      • 변수의 값이 저장된 힙(heap) 메모리의 주소값을 저장
      • 3가지 타입이 존재 : 객체(object), 배열(Array), 함수(function)
      • Access by Reference
    • typeof : 특정 값의 타입 확인 객체 (string type 으로 출력)
      • typeof(11); // 'number'
      • typeof('abc'); // 'string'
    • 비교연산자 (===, ==)
      • === : 엄격한 같음(비교), 변수의 형식과 데이터 비교
      • == : 느슨한 같음(비교), (형식이 다른) 데이터 비교, 강제형변환 수행
    • falsy 값
      • “ false==0 //true “ 이 성립하는 이유는 0 이란 값이 falsy 값이기 때문입니다. 자바스크립트에서는 숫자 0을 강제로 false 로 변환시켜버립니다.
      • 아래의 6가지 값은 자바스크립트에서 falsy값으로 통용됩니다.
        • False
        • 0
        • “”
        • Null
        • Undefined
        • NaN
      • 예제

false == 0 //true
0 == “” // true
“” == false

null == null // true
Undefined == undefined // true
Null == undefined // true
NaN 은 어떠한 값과도 동일하지 않다.

NaN == null // false
NaN == undefined //false
NaN == NaN // false

               
profile
개초보

0개의 댓글