본문 바로가기
프로그래밍 언어/Javascript ES6

JS ES6 - Scope, =, Spread, 삼항연산자

by 후닝훈 2021. 8. 26.
반응형

스코프(Scope)

우리가 어떤 변수를 선언했을 때, 그 변수를 사용할 수 있는 유효범위를 스코프라고 한다.

변수에 접근할 수 있는 범위.

  • var: 함수 단위
  • let: block 단위(변수: let으로 선언한 변수는 값이 변할 수 있음.)
  • const: block 단위(상수: 한번 선언한 값은 바꿀 수 없다.)
function scope(){
	const a = 0;
	let b = 0;
	var c = 0;

	// {} 증괄호 안에 든 내용을 블럭이라고 표현해요.
	
	if(a === 0){
		const a = 1;
		let b = 1;
		var c = 1;
		console.log(a, b, c);
        // 1, 1, 1
	}
	// c의 값은 변경되었다.
	// var는 함수 단위라서 if문 밖에서 선언한 값이 변한다. (영역이 함수 전체)
	console.log(a, b, c);
    0, 0, 1
}

 

=, ==, ===

 

=

▶ =는 할당을 뜻합니다. 어떤 변수에 값을 할당할 때 써요.

 

==

▶ 유형을 비교하지 않는 등차.

▶ 변수 값을 기반으로 비교

▶ ex. 0 == "0"은 true를 반환

 

===

▶ 유형을 비교하는 등차

▶ 엄격한 비교..

▶ ex. 0 === "0"은 false를 반환

 

반응형

 

Spread

let array = [1,2,3,4,5];

let new_array = [...array]; console.log(new_array);

 ... <- 이 점 3개를 스프레드 문법이라고 부른다.

배열 안에 있는 항목들(요소들)을 전부 꺼내준다는 뜻.

즉 [...array]은 array에 있는 항목을 전부 꺼내 새로운 배열에 넣어주겠단 말

 

삼항 연산자

if문의 단축형태.

if문보다 동작속도가 빠르기 때문에 사용하면 좋다.

사용법: 
조건 ? 참일 경우 : 거짓일 경우

let info = {name: "mean0", id: 0};

let is_me = info.name === "mean0"? true : false;

console.log(is_me);

 

 

반응형

'프로그래밍 언어 > Javascript ES6' 카테고리의 다른 글

JS ES6 - Array 내장함수  (0) 2021.08.26
JS ES6 - Class  (0) 2021.08.26

댓글