변수와 타입

프최's log·2020년 8월 3일
0

Javascript

목록 보기
1/26
post-thumbnail
post-custom-banner

변수(Variable)

  • 변수 : 정보를 담는 바구니
    상황에 따라 변할 수 있는 값, 이름(Label)이 붙은 값
  • 선언 : let 변수명; ★ 변수명은 대소문자를 구분하므로 잘 써줘야합니다.
    - 할당 : 변수명 = 값
    let myName = ' abc ';

    // **세미콜론(;)은 문(statement)의 끝**을 의미
    // 세미콜론은 Optional 이지만 분리 구분을 위해 넣어주면 좋다.
    // 단, 넣어야할 때와 넣지 말아야할 때도 존재한다
    // [**Semicolon Guide 사이트 참조**]
    //(https://news.codecademy.com/your-guide-to-semicolons-in-javascript/)
  • const 선언과 let 선언의 차이는?

    • const : 한번 지정하면 그 값을 수정할 수 없다.(재할당x)
    • let : 할당 값이 변할 수 있다. 단, 동일한 변수 이름은 재선언이 불가하다

    이 둘은 모두 유효범위는 Block Scope 입니다.

  • var 선언과 let 선언의 차이는?

    • var : 함수 단위로 자신만의 scope를 가진다.

    • let : block 단위로 예측하기 쉬운 코드

      자바스크립트가 첫 탄생 했을 땐 var 선언 뿐이었는데 var 는 변수명이 똑같더라도 내가 원하는 만큼 값을 넣을 수 있어서 혼돈을 주다보니, 그런 혼돈을 없애주기 위해 나타난 것이 let 이다.

    유효범위는 Function Scope

    참조사이트 : Storing the information you need — Variables

★ var,const,let 는 꼭 넣고 선언해야한다.
★ 'use strict'; - 파일 최상단에 적어주면 문법적 실수가 있는 부분을 에러로 판단합니다.

변수는 꼭 써야하는가?

  • 코드의 재활용성을 높여준다.
  • 코드 수정의 범위가 축소된다. 변할 수 있는 부분을 최소화시켜서 오류 발생을 줄일 수 있다.
  • 변수에 할당된 값이 없으면 무엇을 표시할까?

     let A; 
     > undefined // A에 값이 정의 되지 않았다는 것
  • 표현식(expression) : 변수를 이용헤 연산 등을 할 수 있는 식

    let a = 3;
    let b = 5;
    let sum = a + b; // expression 
    

타입(Type)

변수의 타입

  • 1) 기본 자료형(Primitive) - immutable value(변경불가값)

  • String : 인용부호( ' ' )로 둘러싼 문자열(=텍스트)

  • Number : 숫자

  • Boolean : 참( true ) / 거짓 ( false )

  • null : null 이란 값을 가진 타입. 의도적으로 비어있거나 없는 것

  • undefined : 변수에 값이 할당되지 않은 경우

    let sampleVar = 'Bob'; // String
    let sampleVar = 10; // Number
    let sampleVar = true; // Boolean
    let sampleVar = null; // null
    let sampleVar; // underfined
    

    예시 참조 사이트 : MDN

  • null과 undefined 의 차이는 무엇일까?

    null 은 변수값으로서 의도적으로 비워둔 하나의 값이고
    undefined 는 아예 어떠한 값도 넣지 않았음을 의미한다.

    null 은 초기화할 때도 사용할 수 있다.

    let a = null; // a 에 null 이란 값이 할당됨
    let a; // a에 어떠한 값도 할당되지 않음, 즉 undefined 상태

  • 2) 객체(Object) - mutable 기본 자료형이 아닌 변경 가능한 모든 값

  • Array : 순서가 있는 집합처럼 표현된 자료형 타입
    여러 값을 하나의 단일 참조(single reference)에 저장

  • object : 속성을 담고 있는 가방 = 타입이 섞인(compund) 자료형 타입(★)

  • Dates : 시간을 나타내는 타입

  • function : 함수-재사용하기를 원하는 기능을 담는 곳
    보통 '()'를 함께 가져가는 형태다.

    let sampleVar = [ 1, 'bob', 'name', 2] ; // Array
    let sampleVar = document.querySelector('h1'); // Object

참조사이트 : Categorizing values in JavaScript

typeof 연산자

변수의 타입을 알 수 있게 도와주는 연산자

typeof Underfined // underfiend
typeof null // object
typeof true // boolean
typeof 12 // number
typeof 'mark' // string
typeof function() {} // function

  • 만약 null 의 타입을 조사했을 때, null 로 받고 싶다면?

    let a = null;
    a; // typeof를 붙이면 object를 내보낸다
    > null

Deep study

  • instanceof
  • value instanceof Type
  • Valueof
  • Array.isArray()

그 외 참조 사이트

profile
차곡차곡 쌓아가는 나의 개발 기록
post-custom-banner

0개의 댓글