안녕하세요송기석입니다.


하루가 다르게 날씨가 추워지고 있습니다모두 감기 조심하세요.

 

도입부로 자바와 자바스크립트의 역사에 대하여 이야기 했습니다.


오늘부터는 실제로 자바를 잡기 위한 내용을 정리해 보겠습니다.

 


변수의 기초


 변수를 선언할 때는 var을 사용합니다.


var foo;     // 변수 foo 선언 


 

대입을 할 때 =을 사용하며 오른쪽에서 왼쪽으로 대입합니다.


 foo = “abc”;             // 변수 foo에 문자열 값 “abc”를 대입



앞에 선언과 대입을 동시에 할 수 있습니다.


 var foo = “abc”;         // 문자열 값 “abc”를 갖는 변수 foo를 선언



자바스크립트 변수에는 타입이 없습니다.


var foo;


foo = “abc”;             // 변수 foo에 문자열 값 “abc”를 대입


foo = 123;                 // 변수 foo에 숫자 값 123을 대입



식 안에 변수명을 쓰면 변수 값을 꺼낼 수 있습니다.


var n = 7;                 // 변수 foo에 숫자 값 7을 대입


n = n + 1;


console.log(n); // 8



선언하고 아무것도 대입하지 않으면 undefined 값이 할당됩니다.


var foo;


console.log(foo);                // 변수 foo의 값은 undefined


undefined



선언하지 않은 변수의 값을 꺼내면 ReferenceError 예외가 발생합니다.


console.log(x);


ReferenceError: x is not defined



변수를 선언할 때 var를 생략하면 전역변수로 취급합니다.


전역변수 사용은 프로그램을 개발을 편하게 할 수 있습니다.


하지만 전역변수의 사용으로 예상하지 못하는 버그를 만들 수 있다는 점을 명심해야 합니다.


일반적으로 var을 생략한 전역변수 사용은 권장하지 않습니다.


특히 변수 선언 시 실수로 var을 빼먹어 버그를 만드는 경우도 많습니다.


저는 전역변수를 사용해야 하는 경우 var로 선언한 변수를 다시 다른 변수로 선언해서 사용할 때 extend_를 추가합니다.


또는 전역변수를 선언할 때 global_ 이라는 이름을 추가하여 원하지 않는 전역변수의 선언을 줄이고 있습니다.


var app;

 

extend_app = app;

 

global_app = 0;



 

상수

 

상수는 변하지 않는 값입니다변수를 var을 사용한다면 상수는 const를 사용합니다.


수는 모두 대문자로 적는 관례가 있습니다.



const TEMP = 7;

 

console.log(TEMP); // 7


TEMP = 8;


console.log(TEMP);  // 7


 

상수에 새로운 값을 다시 대입해도 값은 변하지 않습니다.


상수도 변수와 같이 대입하지 않은 상수값은 undefined입니다.


 

원래는 자바스크립트의 특징에 대하여 정리 했었습니다.


다 정리 하고 보니 … 오늘도 글만 잔득 있는 악마의 글이다.”라는 생각에 전부 지우고 새로 시작했습니다.


그런데 새로 쓴 글도… 악마의 글인 것 같습니다.