*Javascript*

[javascript] 변수와 자료형

깐부로부터 2021. 12. 11. 13:46

변수 선언시 var뿐만 아니라 let, const를 이용해서 선언 가능

 

 

 

var

중복선언이 가능하다 / 재할당이 가능하다.

 

콘솔창에서 에러 없이 모두 잘찍힌 것을 확인 할 수 있다.

 

 

 

let

중복선언 불가능하다 / 재할당은 가능하다

 

콘솔창에서 확인해보면 이미 위에서 userPwd로 선언한 변수가 존재하므로 선언할 수 없다는 에러메시지가 뜬다.

 

 

 

const
(constant) = 상수

중복선언 불가능하다 / 재할당도 불가능하다

(상수같은 개념 == 한번 초기화된 값 변경 불가)

 

userName변수의 값을 '홍말똥'으로 변경하고자 하니 역시 콘솔창에서 에러메세지가 뜬다.

 

 

=> var는 자유롭게 변수 선언, 사용할 수 있다는 장점이 있다.

하지만 중복된 변수가 남발하게 되므로 의도치 않게 값이 변경되는 불상사가 발생할 수 있다는 단점이 있다.

따라서 보완돼서 나온게 된게 let, const

권장사항 : let, const 위주로 사용할 것이 좋겠다.

 

 


 

변수의 scope

 

 

1) var는 function scope == 변수가 선언된 "함수영역"내에서 사용 가능

 

 

2) let, const는 block scope == 변수가 선언된 블럭{} 내에서만 사용 가능

 


변수 선언 위치에 따른
전역변수 / 지역변수

 

 


 

자료형

변수 선언 시 자료형을 별도로 지정하지 않음(자료형의 개념이 없는건 아님)

=> 변수에 대입되는 값(리터럴)에 따라서 알아서 자료형이 자동으로 결정됨 : 타입추론

 

 

 

자바스크립트의 자료형

 

- string(문자열)

- number(숫자)

- boolean(논리값)

- object(객체)

- function(함수)

- undefined(초기화가 안된 변수)

 

 

 

자료형을 확인할 때 필요한 함수 : typeof(변수명);

 

 

 

 

'*Javascript*' 카테고리의 다른 글

[javascript] 배열  (0) 2021.12.16
[javascript] 문자열과 숫자  (0) 2021.12.15
[javascript] 요소가져오기 (접근하기)  (0) 2021.12.10
[javascript] 데이터 입/출력  (0) 2021.12.09
[javascript] javascript  (0) 2021.12.09