Front/JavaScript

[JavaScript] 변수와 상수

시월해 2021. 4. 22. 17:44

<자바스크립트에서의 변수와 상수>
 

변수 : 데이터를 저장하는 공간. 데이터가 변할 수 있음.
           물건을 보관했다가 필요할 때 다시 꺼내 사용하는 일종의 창고라고 생각하면 됨.
           보관하는 내용이 물건 대신 데이터라는 점.
         * 특히 자바스크립트는 변수에 숫자와 문자 뿐만 아니라 함수와 클래스까지 저장이 가능함.
 

상수 : 데이터를 저장하는 공간. 데이터가 변할 수 없음.
 
변수 선언하는 방법
형식) var 변수명 = 값;
        let 변수명 = 값; //ES6 버전 이후

상수 선언하는 방법
형식) const 상수명 = 값;

※ var의 의미 : 자바스크립트에서 변수 선언을 의미하는 키워드.

<자바스크립트에서의 자료형>


- 숫자형(number) : 숫자를 표현하는 자료형. 숫자 안에서도 정수, 실수로 구분이 되는데 자바스크립트에서의 숫자 자료형은 그 종류들을 하나로 총괄함. 십진수와 실수형은 일반적으로 사용하는 숫자. 하지만 16진수는 글자색이나 배경색을 나타낼 때 주로 사용함.

 

 예) var age = 30; (정수 10진수)
     var color = 0xF00; (빨간색)

 

- 문자형(string) : 작은 따옴표 또는 큰 따옴표를 양 끝에 두고, 그 안에 한 글자 이상의 기호 또는 숫자가 있는 자료형을 문자형이라고 함.
 

  예) var name = "홍길동";


- 논리형(boolean) : 참(true) 또는 거짓(false) 두 가지 값을 가지는 자료형.


- typeof 연산자 : 해당 변수의 자료형을 알려주는 연산자.


- 함수형(function)


- 클래스(class)


- 클래스 인스턴스(class instance)


- undefined : 일반적으로 변수를 만든 후 초기화하지 않은 상태를 말함.
 

  예) var data;


- null : 아무것도 참조하고 있지 않다는 의미. 주로 객체를 담을 변수를 초기화할 때 많이 사용됨.


- NaN : Not A Number. 즉, 숫자가 아닌 데이터를 숫자처럼 사용할 때 나타남.

<변수명 작성 규칙>


1. 영문 대/소문자, 숫자, _ 또는 $ 만을 사용할 수 있음.
2. 변수명의 첫 글자로는 숫자가 오면 안 됨.
3. 변수명은 대소문자를 구분함. ==> SUM과 sum은 다른 변수명으로 인식.
4. 변수명 작성 시 소문자로 시작.
5. 공백이 들어가면 안 됨.
6. 변수명을 사용 시 되도록 의미를 부여해서 작성하는 것이 좋음.
7. 자바스크립트 예약어를 사용할 수 없음. 
   ==> document, do, for, var 등등
8. 두 단어 이상을 결합해서 변수명을 사용하는 경우 낙타봉 표기법(camelCase)을 권장함.
   ==> resultOfHap

 

*tip : 바깥에 "" 가 있으면 ''로 써주어야 한다.("'"''"'"번갈아가면서 사용)


<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
<script type="text/javascript">


	//var name = "홍길동";
	//console.log(name);
	
	//var name = "유관순";
	//console.log(name);
	
	//let name = "홍길동";
	//console.log(name);
	
	//let name = "유관순";
	//console.log(name);
	
	//변수 선언
	let name = "홍길동";
	document.write(name + "<br>");
	
	name = "100";
	document.write(name + "<br>");
	
	//상수 선언
	const num = 47;
	document.write(num+"<br>");
	
	//num = 150; ==> 상수이기 때문에 값을 수정 못함 - error
	//document.write(num+"<br>");
	
	let str = "대한민국";
	//바깥에 "" 가 있으면 ''로 써주어야 한다.("'"''"'"번갈아가면서 사용)
	document.write("<h2 style='color: red;'>"+str+"</h2></br>");
	
	document.write(typeof str);
</script>
</head>
<body>

</body>
</html>

 

var name = "홍길동";
console.log(name);
	
var name = "유관순";
console.log(name);

==> 둘의 변수명이 같은데도, var는 에러를 표시하지 않는다.

정상출력 됨.

==> 따라서 var 보다는 let을 사용하는 것이 좋다.

let name = "홍길동";
console.log(name);
	
let name = "유관순";
console.log(name);

이미 정의되어 있는 이름이라고 오류가 뜸.


//변수 선언
let name = "홍길동";
document.write(name + "<br>");
	
name = "100";
document.write(name + "<br>");

변수를 선언해보자.

정상출력


//상수 선언
const num = 47;
document.write(num+"<br>");
	
num = 150; // ==> 상수이기 때문에 값을 수정 못함 - error
document.write(num+"<br>");

상수는 값의 변경이 불가능함.


변수를 선언하여 태그를 입혀보자.

let str = "대한민국";
//바깥에 "" 가 있으면 ''로 써주어야 한다.("'"''"'"번갈아가면서 사용)
document.write("<h2 style='color: red;'>"+str+"</h2></br>");
	
document.write(typeof str);

대한민국에 태그가 입혀졌다. str의 타입은 string으로 반환.