[Javascript]

[Javascrip] 변수

Jarvis2304 2022. 10. 17. 20:19

▶ 자바스크립트 데이터 타입

- 자바스립트 언어로 다룰 수 있는 데이터의 종류

 

● 숫자 타입  ex) 42, 3.14

문자열 타입  ex)  '안녕', "a", "365", "3+4"

논리 타입  ex) true, false

객체 레퍼런스 타입  - 객체를 가리킴(C언어의 포인터와 유사)

null  - 값이 없음을 표시하는 특수 키워드. Null, NULL과는 다름

※ 자바스크립트에는 문자 타입이 없고 문자열로 표현 ※

 

▶ 변수

- 데이터를 저장하는 공간

▷ 변수 선언 : 변수 이름을 정하고, 저장 공간 할당

- 변수 재정의 등의 문제점으로 인해 let과 const가 새로 추가됨

 

● var를 이용하는 방법

ex)  var score;                  // 변수 score 선언

var year, month, day;      //  year,month, day 의 3개의 변수 선언

var address = "서울시"   // address 변수를 선언하고 "서울시"로 초기화

 

 

● let을 이용하는 방법

- var는 동일한 변수를 재선언할 수 있지만, let으로는 동일한 변수 재선언 불가능

- let은 변수의 사용범위를 블록 내로 제한

 

ex) let score;                  // 변수 score 선언

let year, month, day;     //  year,month, day 의 3개의 변수 선언

let address = "서울시"  // address 변수를 선언하고 "서울시"로 초기화

 

 

● const를 이용하는 방법

- 상수를 선언할때 사용

 

ex)  const MAX = 10; 

 

 

● var 없이 선언

ex)  age = 21  // var 없이, 변수 age를 선언하고 21로 초기화(age가 이미 선언된 변수이면, 존재하는 age에 21저장)

 

※ 자바스크립트에는 변수 타입이 없음

 

● 변수 타입을 선언하지 않음

 

● 변수에 저장되는 값에 대한 제약 없음

 

 

 

▶ 지역변수와 전역변수 

 

블록 변수

- let 키워드로 if, while for 등 블록 내에 선언된 변수

- 블록 내에서만 사용 가능

- 블록이 끝나면 사라지므로 블록 바깥에서는 접근 불가

 

 

 

▶ this로 전역변수 접근

● 지역 변수와 전역 변수의 이름이 같을 때, 전역변수에 접근하고자 할 때 this.전역변수를 이용하여 접근

 

예제) 지역변수와 전역변수

 

 

 

 

 

 

 

▶ 자바스크립트의 상수(literal)

- 변수가 데이터 저장 공간의 이름이라면, 리터럴(literal)은 데이터 값 그 자체

- 변하지 않는 값을 가지는 이름

 

ex) let x = 10;    // x는 변수, 10은 리터럴

 

▷상수 종류

 

▷ 상수 선언

- const 키워드를 이용하여 초깃값과 함께 선언

- 상수는 재선언 불가

 

ex) const MAX = 10;    // 10의 값을 가지는 상수 MAX 선언,  C언어에서 #define MAX 10과 동일

 

 

▷ 문자열 상수

- 인중 인용 부호(" ")와 단일 인용 부호 (' ')모두 사용가능

- 문자열 내에 문자열 사용가능

- 문자열 내에 이중인용 부호 문자(")를 사용하고자 하면 \"로 사용한다

 

예제) 상수