JS (Java Script)

변수 선언 let const var 차이

GABOJOK 2023. 8. 29. 14:44

let 

재할당이 가능하다.  let a = 2; a=6;

재선언은 불가하다.  let a = 2; let a = 6;

변수가 동작하는 범위는 모든 {} 안이다. for나 if 등등

"블록스코프" 를  가지고 있다. 

괄호 밖에서 선언한 변수명과 동일하게 괄호 안에서 선언할 경우, 재할당이 되지 않고, 서로 다른 변수로 취급한다. 

괄호 밖은 전역변수로, 괄호 안은 지역변수로.

 

const

변하지 않는 값(상수)를 넣을때 많이 쓴다. 

재할당이 불가하다

재선언도 불가하다.

변수가 동작하는 범위는 모든 {} 안이다.   for나 if 등등

const를 이용해 대문자로 변수명을 설정하는건 주로 하드코딩 값의 별칭을 만들때 사용한다. 

COLOR_ORANGE는 "#FF7F00"보다 기억하기가 훨씬 쉽다

 

+

const people = {이름 : 'kim'};

people.이름 = 'park';

이 코드는 잘 작동한다. 

const는 재선언 재할당 안된다 했는데 왜 가능할까?

변수에 할당된 값 자체를 재할당 한게 아니라

변수에 할당된 것 안에 있는 값을 변경했기 때문

변수에 할당된 것 안에 값을 변경하는건 가능함. 

 

 

var

ES6 이전에 사용하던 변수 선언 방법.

재할당이 가능하다. 

재선언도 가능하다. 

그래서 오류가 많다. 

변수의 동작 범위는 function 안에서 작동한다. 

"함수스코프" 를 가지고 있다.

함수 안에서 선언된 변수는 함수 내부 어디든 접근 가능하다. 

함수 밖에서 선언된 변수는 전역변수로 취급된다. 

 

변수명 설정법 

camelCase 

단어 표기할때 첫 문자는 소문자, 다음단어는 띄어쓰기 대신 대문자로. 
예를 들면 helloWorld 이런식.

 

변수명 설정법은 다양한데 나중에 추후 정리하겟슴.

'JS (Java Script)' 카테고리의 다른 글

confirm() 함수  (0) 2023.08.29
prompt() 함수  (0) 2023.08.29
변수의 작동 원리  (0) 2023.08.29
use strict 에 대해서  (0) 2023.08.29
프로그래밍 패러다임 이란? (왕초보 이해용)  (0) 2023.08.29