3. Variables(변수)

서동찬·2020년 6월 23일
0

javascript

목록 보기
5/15

1. 변수

  • 컴퓨터가 데이터를 기억해야하는데 사용하는 키워드

2. 변수 선언

  • 기본적으로 프로그램은 값(value)을 다뤄야 하고, 그 값들은 각각의 변수에 저장되어 사용
  • 예)
var name = "김개발";
var job = "frontend developer";

3. 변수 이름 정하기

  • 한 파일에서 같은 변수 이름을 중복해서 사용할 수 없다!!!
  • 대소문자 구문 - 변수이름, 함수이름, 연산자 모두 대소문자를 구분합니다.
    (myName과 MyName은 다른 변수)
  • 변수 이름을 정할 때, 첫 번째 문자는 반드시 글자나 밑줄(_), 달러기호($)중 하나 입니다.
  • 두 번째 문자 부터는 글자, 밑줄, 달러, 숫자 중에서 자유롭게 쓸 수 있습니다.
    변수이름, 함수이름 등 camelCase(카멜케이스) 방식으로 쓸 것.

1) camelCase

  • 카멜케이스란 낙타 등처럼 울퉁불퉁하다는 소리입니다. 단어가 새로 시작할 때부터 대문자로 쓰면 됩니다.
  • firstSecond / myProfileImg / toDoListArray

2) snake_case

  • 변수이름에 -는 사용할 수 없으므로, _를 사용한 것
  • 예) first_second / my_profile_img / to_do_list_array

4. block

1) block : block이란 중괄호({}, curly brace)로 감싸진 것
2) 코드들의 block들..

  • function : 함수(function) 내부는 하나의 block이다.

    function 함수이름( ) { ... }

  • for : for문 또한 하나의 block

    for ( ) { ... }

  • if : if문 또한 하나의 block

    if ( ) { ... }

5. Scope

1) Scope :

  • 변수가 선언되고 사용할 수 있는 공간.
  • scope 외부(block밖)에서는 특정 scope의 변수에 접근할 수가 없다.
  • global variable(전역변수) : block밖인 global scope에서 만든 변수

    const color = 'red'; // 전역 변수!!!!
    function returnColor() {
    return color; //밖에 있는 변수사용이 가능하다!!!
    }

6. let, const

1) let, const ... 그리고 var 변수 키워드

  • 자바스크립트에서는 변수 선언 키워드가 총 3개 있다.

    var, let, const

  • var 키워드는 function-scope으로써 var 키워드를 사용한 변수이름은 재선언이 가능하다.

    var name = "서동찬";
    var name = "김동찬";
    //만들어진 변수이름으로 재선언했는데 아무런 문제가 발생하지 않는다.

  • 이러한 문제로 인하여 let과 const를 사용을 하는 것이 좋다.

2) let & const 차이

  • let과 const는 block-scoped이다. 그러므로 let, const 키워드로 사용한 변수 이름은 재선언이 불가능하다.

    const name = "서동찬";
    const name = "김동찬" //에러 발생
    let name2 ="서동찬2";
    let name2 = "김동찬2"; //에러 발생

  • let과 const의 차이점은 변수의 immutable여부이다. 즉, 변수의 재할당이 가능하냐 불가능하냐이다.

  • const변수는 재할당이 불가능하다. 즉, 한 번 값을 할당하면 끝이다.

    const name = "서동찬ㅇㄹㅇ"; //처음 값 할당
    name = "서동찬" // 에러발생 ()

  • let 변수는 재할당이 가능하다.

    let name = "서동찬ㅁㅇㄻㄴㅇㄹ"; //처음 값 할당
    name = "서동찬"; // 문제없음

  • const 키워드는 정말 정해진 값을 할당 할 때 사용해야한다.

profile
개발자 매뉴얼

0개의 댓글