본문 바로가기

4. Programming/4.3 JavaScript

2. variable (변수)

변수 

변수 : 프로그램이 어떤 값을 메모리에 저장해 두고 다시 사용하기 위한 공간.

Var 키워드를 통해 변수를 선언


var 변수값 = 초기값;

 

변수 선언 시 초기 값을 지정하지 않을 경우, 값을 저장할 때 까지 그 변수는 undefined 상태.

변수 선언 시 var 키워드 생략이 가능하나, Scope 문제가 발생될 수 있으므로 생략하지 않는 것이 좋음.


식별자 규칙

1. 첫번째 문자는 [A-Z a-z _ $] 사용 
2. 나머지는 [A-Z a-z _ $ 0-9] 사용
3. 예약어는 사용 불가 (Ex. Var, navigator 등..)


값에 의한 데이터 타입 결정 

Javascript는 값에 따라 데이터 타입이 결정되는 동적인 언어

var a;
var b = 5;
var c = '문자열';
console.log(a);
console.log(b);
console.log(c);

출력 값 

undefined
5
문자열

저장 된 값에 따라 동적임으로 해당 형태로로 변경 가능


var a = 5;
a = '문자';

console.log(typeof(a))

출력 값

string


값을 저장하는 기본형 데이터 타입 

데이터 타입 

특징 

number 

IEEE 754 표준에 의해 정의된 8바이트 크기의 실수  

String

유니코드 문자나 숫자, 문장 부호 등의 시퀀스로 텍스트를 표현

따옴표(" ", ' ') 

Boolean

True, False로 진리 값을 표현하는 데이터 타입 

null

예약어로 보통 참조 타입과 같이 쓰이며, 어떠한 객체도 나타내지 않는 특수한 값으로 사용 

undefined

변수는 선언되었으나, 값이 할당된 적이 없는 변수에 접근하거나, 존재하지 않는 객체 프로퍼티에 접근 할 경우 반환되는 값 



참조 값을 저장하는 참조형 데이터 타입 

데이터 타입 

특징 

Array

데이터 값들의 모음. 배열에 각 데이터 값에는 0부터 시작하는 인덱스라는 번호로 값에 접근 가능

(Ex. [1,2,3,4,5,6,7,8])

Object

이름이 붙은 값들의 모음. 이름이 붙은 값들을 프로퍼티라고 하며, 객체 프로퍼티는 객체명 다음에 점(.)과 프로퍼티명을 붙이거나, 객체명 다음 대괄호 []를 둘러 싼 프로퍼티명의 문자열을 써서 접근 가능

Function

객체 프로퍼티에 할당 될 수 있는 실행 가능한 코드를 가지고 있는 데이터 타입.



리터럴

리터럴 : 프로그램 코드 상의 데이터의 값을 표현하는 방식 
자바스크립트의 리터럴 : 숫자, 문자열, 배열, 객체, 함수, boolean, undefined, null

변수 호이스팅

console.log(x); // undefined
var x = 123;
console.log(x); // 123

변수 x가 선언되지 않은 상태에서  console.log(x) 했을 때, is not defined 가 발생되지 않는 이유는 모든 선언문이 호이스팅(Hoisting) 되기 때문.

호이스팅이란, var 선언이나, function 선언 등 모든 선언문이 해당 Scope의 상단으로 옮겨진 것처럼 동작하는 특성.


즉, 모든 선언문이 선언되기 이전에 참조가 가능.


참고 : https://poiemaweb.com/

'4. Programming > 4.3 JavaScript' 카테고리의 다른 글

5. Object (객체)  (0) 2018.06.17
4. 제어문 (Control flow statement)  (0) 2018.05.28
3. Operator (연산자)  (0) 2018.05.12
웹 자바스크립트 에디터 사이트  (0) 2018.03.03
1. Java script란  (0) 2017.07.23