Javascript 기초 (11) 병합연산자 ??

코린이서현이·2023년 7월 30일
0

😊들어가면서😊

자바스크립트에는 신기한 기능이 많다. 근데 왜 이름에 자바를 붙였을까 조금 양심업다.
??연산자는 진짜 처음봐서 신기하다.
여러 피연산자 중 그 값이 확정되어있는 변수를 찾을 수 있다고 하는데 신기하다.

📕 nullish(무효) 병합 연산자 ??

??

  • 여러 피연산자 중 그 값이 확정된 피연산자를 반환하며, 그런 피연산자가 하나도 없으면 마지막 피연산자를 반환한다.

📖 ??의 쓰임새

1. 값이 정해진 변수를 간편하게 찾아낼 수 있다.

	// a가 null이거나 undefined이면 b를 반환하고, a가 둘다 아니면 b를 반환한다.
	x = a ?? b 

	x = (a !== null && a !== undefined) ? a : b;

2. 변수에 기본값을 할당하는 용도로 사용할 수 있다.

// height가 null이나 undefined인 경우, 100을 할당
height = height ?? 100;

📒 ??와 ||의 차이

|| : 여러 값들 중 첫번째 truthy 값을 반환합니다. (0이나 빈문자열은 취급하지 않는다.)
?? : 여러 값들 중 첫 번째 정의된(defined) 값을 반환합니다. (0이나 빈문자열도 취급한다.)

||은 0을 거짓값으로 판단해 무시하지만 ??는 0도 정의된 값으로 인식한다는 점에서 차이가 있다.

0 || null || 3 || 0			//3
0 ?? null ?? 3 ?? 0			//0

➕ 우선순위

우선순위가 낮기 때문에 괄호를 신경써서 쓰자.!
괄호 없이 ??를 ||나 &&와 함께 사용하는 것은 금지되어있다.

profile
24년도까지 프로젝트 두개를 마치고 25년에는 개발 팀장을 할 수 있는 실력이 되자!

0개의 댓글