[javascript] var, const, let

sunny·2021년 1월 12일
1

🐣 javascript ES6

목록 보기
15/15
post-thumbnail

const

const str = "orange"
str = "banana"; //-> error! 값의 재할당이 불가능하다.
function home() {
	const list = ["apple", "orange", "watermelon"]
	list.push("banana");
  // push 등을 통해 배열의 값을 변경하는 것은 가능하다.
}

const를 사용하더라도 배열과 오브젝트의 값을 변경하는 것은 가능하다.
재할당만 불가능.


var와 let의 차이점

var는 함수단위 스코프, let은 블록단위 스코프

function home() {
  for (var i = 0; i < 100; i++) {
  }
  console.log(i) // 100
}

function home() {
  for (let i = 0; i < 100; i++) {
  }
  console.log(i) // not defined 에러발생
}

let과 클로저

var list = document.querySelectorAll("li");

for (var i = 0; i<list.length; i++) {
	list[i].addEventListener ("click", function() {
		console.log(`${i}번째 리스트 입니다.`); 
	});
}

-> 대표적인 클로저 문제 ❗
var를 사용했을때는 모든 리스트를 눌러도 4번째 리스트라고 출력된다.
var대신 let을 사용하면 바로 해결됨.


  1. const를 기본으로 사용한다.
  2. 변경이 될 수 있는 변수는 let을 사용한다.
  3. var는 사용하지 않는다.

immutable array 만들기

const list = ["apple", "orange", "watermelon"];
list2 = [].concat(list, "banana");
console.log(list === list2); //false
profile
blog 👉🏻 https://kimnamsun.github.io/

0개의 댓글

관련 채용 정보