02 자료와 변수

Seung-ho Kim·2021년 7월 13일
0

JavaScript

목록 보기
1/2

템플릿 문자열

과거 자바스크립트는 문자열 내부에 표현식을 삽입할 때 다음과 같이 문자열 연결 연산자(+)를 사용해야 했다.

> console.log('표현식 273 + 52의 값은 ' + (273+52) + '입니다...!')
표현식 273 + 52의 값은 325입니다...!

최근 자바스크립트에서는 ::템플릿 문자열::이라는 기능이 추가되어 이러한 코드를 간단하게 작성할 수 있다.

템플릿 문자열은 ::백틱( ):: (option + ₩) 기호로 감싸 만든다. 문자열 내부에 {…}` 기호를 사용하여 표현식을 넣으면 표현식이 문자열 안에서 계산된다.

> console.log(`표현식 273 + 52의 값은 ${273 + 52}입니다...!`)
표현식 273 + 52의 값은 325입니다...!

== 연산자와 != 연산자

::=== 연산자::와 ::!== 연산자::는 ‘값과 자료형이 같은지’를 비교하는 연산자이다.
::== 연산자::와 ::!= 연산자::는 ‘값이 같은지’를 비교하는 연산자이다.

> 1 == "1"			// 자료형이 달라도 어떻게든 변환을 하고 나면 값이 같아지므로 true
true
> false == "0"		// false가 0으로, "0"이 0으로 변환된 뒤에 비교한다.
true
> "" == []			// 빈 문자열은 false, 비어있는 배열 []은 false로 변환된 뒤에 비교한다.
true
> 0 == []				// 0은 false, 비어있는 배열 []은 false로 변환된 뒤에 비교한다.
true

undefined 자료형

  • 상수와 변수로 선언하지 않은 식별자
    상수와 변수로 선언하지 않은 식별자의 자료형을 확인해보면 undefined가 나온다.
> typeof(abc)
"undefined"

> typeof(그냥식별자)
"undefined"
  • 값이 없는 변수
    변수를 선언하면서 값을 지정하지 않은 경우에 해당 식별자는 undefined 자료형이 된다.
    * cf) 참고로 상수는 선언할 때 반드시 값을 지정해야 하므로 값이 없는 상수는 존재하지 않는다.
> let a
undefined

> typeof(a)
"undefined"

문자열 입력 : prompt()

prompt(메시지 문자열, 기본 입력 문자열)

불 입력 : confirm()

confirm() 함수를 사용하면 사용자에게 확인을 요구하는 메시지 창이 나타난다. 사용자가 [확인] 버튼을 클릭하면 true를 리턴하고, [취소] 버튼을 클릭하면 false를 리턴한다.


숫자 자료형으로 변환하기 : Number()

> Number("273")
273
> typeof(Number("273"))
"number"	// 자료형이 숫자이다.

다른 문자가 들어있어서 숫자로 변환할 수 없는 문자열의 경우 ::NaN:: (Not a Number)라는 값을 출력한다.
NaN은 자바스크립트에서 숫자이지만, 숫자로 나타낼 수 없는 숫자를 뜻한다.
Number() 함수를 사용해서 변환했으므로 자바스크립트에서 자료형은 숫자이지만, 실질적으로 숫자로 변환할 수 없으므로 ‘숫자가 아니다(Not a Number)’라고 출력하는 것이다.

> Number("$273")
NaN
> typeof(Number("$273"))
"number"

문자열 자료형으로 변환하기 : String()

> String(52.273)
"52.273"
> String(true)
"true"
> String(false)
"false"

문자열이 아닌 다른 자료에 빈 문자열을 문자열 연결 연산자(+)를 사용하여 연결하면 문자열 자료형으로 변환한다.

> 273 + ""
"273"

> true + ""
"true"

불 자료형으로 변환하기 : Boolean()

::0, NaN, ‘’, “” (빈 문자열), null, undefined:: 라는 5개의 자료형은 false로 변환된다. (암기 !)

> Boolean(0)
false
> Boolean(NaN)
false
> Boolean("")
false
> Boolean(null)
false

> let 변수
undefined
> Boolean(변수)
false

불이 아닌 다른 자료에 논리 부정 연산자(!)를 2번 사용하면 불 자료형으로 변환한다.

> !!273
true
> !!0
false
> !!'안녕하세요'
true
> !!''
false

0개의 댓글