JavaScript

[JavaScript] 조건문, 문자열

Gray Park 2020. 7. 28. 20:00
728x90
반응형

코딩 기초 중 로직의 시작을 알리는 조건문과 배열에 앞서 익히게 되는 문자열에 대해 학습했다.

조건문

자바스크립트의 조건문은 다른 언어와 비슷하다.

if (condition) // condition은 항상 Boolean 값으로, 참/거짓 (True/False) 판별이 가능해야 한다.
{
	statement; // condition을 만족하는 경우에만 내부의 statement가 동작한다.
}

위에서 보다시피, 조건문은 참/거짓을 판별하는 condition을 포함하여야 하며 condition이 참(true)일 경우에만 내부의 statement가 동작한다.

 

이번에 JS에서 조건문을 다루던 중 재밌었던 점은 바로 NaN이라는 친구다. 이 친구는 Not-a-Number의 줄임말로, 표현할 수 없는 숫자이며 자기 자신과 일치하지 않는다.

if (true === true) console.log("It is true") // It is true
if (true === false) {} else console.log("It is false") // It is false
if (NaN === NaN) console.log("It is NaN") // ERROR: Uncaught ReferenceError: Nan is not defined

보다시피, if문의 조건문(condition)에 있는 값이 true이면 console.log가 실행되고, false이면 else문의 console.log가 실행된다. 하지만 (NaN === NaN)은 에러를 낸다. 그럼 언제, 어떻게 사용할 수 있을까?

 

당연하게도 NaN은 혼자 사용할 수 없다. 쉽게 말해 개념적인 친구다. 그래서 함수와 함께 사용한다.

let num = [0/0, "String" * 100, Math.sqrt(-4)];
for (let i = 0; i < 3; i++){
	if (isNaN(num[i])) console.log(num[i], "It is NaN\n")
}
/*
* It is NaN
* It is NaN
* It is NaN
*/

isNaN(parameter)parameterNaN이면 True, 그렇지 않으면 False를 반환한다.

NaN의 대표적인 경우는 위의 배열에서 볼 수 있듯이 허수이다.

  • 0 / 0 (0으로 나누는 것)
  • 문자열과 숫자의 계산
  • 음수의 제곱근

NaN은 자체가 개념적이고 추상적이기 때문에 비교할 수 없고 '숫잔데 표현할 수 없다' 정도로 이해하면 정신건강에 이롭다.

문자열

문자열에서의 꿀팁은 딱 하나다. JS에서 변수명을 문자열에 그대로 삽입할 수 있는 어마어마한 기능을 처음 접했다. 바로 백틱(`)이다.

let firstName = 'Gray';
let lastName = 'Park';
console.log(`${lastName}집안의 ${firstName}입니다.`);
// Park집안의 Gray입니다.

이 백틱 사이에 ${변수명}을 삽입하는 것만으로 아주 쉽고 편하게 변수를 문자열 형태로 반환할 수 있다. (게비스콘)

728x90
반응형