본문 바로가기
국비/JavaScript

02. 데이터 타입과 변수

by suehyune12 2022. 9. 14.

 

데이터 타입과 변수

 

1. 자바스크립트 식별자(이름)

식별자(identifier)란 자바스크립트 개발자가 변수, 상수, 함수에 붙이는 이름이다.
식별자를 만들때 다음 규칙을 준수해야 한다.


첫 번째 문자 : 알파벳, 언더바, $문자만 사용 가능
- 두 번째이상 문자 : 알파벳, 언더바, 0-9, $사용 가능
- 대소문자 구분 : data와 dAta는 다른 식별자이다.
- 키워드(예약어) 사용 불가


6variable X
student_id O
_code O
if X
%calc X
$data O



2. 문장 구분

세미콜론으로 문장과 문장을 구분한다.
한 줄에 한 문장만 있는 경우 세미콜론을 생략할 수 있다.


i = i + 1 O
j = j + 1 O
k = k + 1; m = m + 1 O
n = n + 1  p = p + 1 X


3. 주석

- 한 줄 주석 : //
- 범위 주석 : /**/



4. 데이터 타입(typeof(): 어떤 타입인지 알려준다.)


- 숫자 타입(number) : 42, 3.14, .... 
- 논리 타입(bool) : true, false
- 문자열 타입(string) :  "안녕", 'a', 'A', .....
- 객체 레퍼런스 타입(object) : Object, Array, Math, Date, ...
- undefined : 타입이 정해지지 않은 것을 의미한다. 즉 값이 담긴적이 없다.
- null : 값이 정해지지 않은 것을 의미한다.



5. 변수


- var 키워드로 변수를 선언한다.


var score; -> 출력 시 undefined
var year, month, day; -> 출력 시 undefined
var adress = "남양주";


- var 키워드 없이 변수를 선언할 수 있다.


age = 20;


만약 위의 age가 이미 선언되어 있다면 값 수정.
var를 반드시 붙여서 선언하는 것이 명료하고, 실수를 막을 수 있기 때문에
var 키워드 없이 선언하지 말자!


※ 대혼란

var age = 20;
var age = 10;


var 키워드를 사용하더라도 같은 이름으로 선언이 가능하고 두 번째부터는 값만 수정된다.


자바스크립트는 버전이라고 얘기하지않고 연식(이크마)이라고 얘기한다. 
주로 ES5를 많이 쓰는데 요즘에는 ES6도 사용한다. 

변수



6. 지역변수와 전역변수


변수의 사용 범위(scope)에 따라서 전역변수(global)와 지역변수(local)로 나뉜다.
var로 선언 시, scope는 반드시 함수의 영역만 판단한다.



전역변수: 함수 밖에서 선언되거나 함수 안에서 var키워드 없이 선언
지역변수: 함수 안에서 var 키워드로 선언. 선언된 함수 내에서만 사용 가능

 

scope.js

 

scope.html

 

7. 상수


let : 수정 가능, 한번만 선언

let

 


 

for는 함수가 아니다.(예약어)
지역변수 같지만 함수의 scope가 아니기 때문에 영역 밖에서도 사용이 가능하다.
함수가 아닌 다른 영역(중괄호 영역)에서는 scope로 판단하지 않는다.

 

 

let 키워드는 함수 레벨 스코프가 아닌 블록 레벨 스코프이기 때문에
중괄호 안에서 선언하면 함수가 아니여도 
해당 중괄호가 닫히면 메모리에서 해제된다.
오류 ▶ 중괄호 안에서 let으로 선언된 변수는 밖에서 사용할 수 없다.

 


const : 수정 불가능(우리가 알고있는 상수의 개념과 동일)

const

 

'국비 > JavaScript' 카테고리의 다른 글

05. 코어 객체 : 이미 만들어진 객체  (0) 2022.09.15
04. 객체  (0) 2022.09.14
03. 함수  (0) 2022.09.14
01. 작성 위치 & document.write( ) & 다이얼로그  (0) 2022.09.13
00. JavaScript의 기본  (0) 2022.09.13