javascript - 1일차

10636 단어 JavaScriptJavaScript

자바스크립트의 어색한 부분? 헷갈리는 부분들을 정리해 놓았습니다.

자료형

  • typeof 에서 낯선 부분들을 정리했다.

// 잘 못 된 예시
// output: 'stringcodeit'
console.log(typeof 'javascript' + 'codeit') 

// 잘 된 예시
// output: 'string'
console.log(typeof ('javascript' + 'codeit')) 

// 궁금 예시
// outupt: 'number' -> 'string'
console.log(typeof typeof 8)

// 불린
// output: False
let x = '', 0, NaN // 그 외 나머지는 True
console.log(x)

// 형변환을 자동으로 하고 계산을 해준다.
// 아무리 그래도.. 이것은 신기하다
console.log(4 + '2') // 42
console.log(4 + 2)	// 6
console.log(4 - true)	// 3
console.log(4 * false)	// 0
console.log(4 / '2')	// 2
console.log('4' ** true)	// 4
console.log(4 % 'two')	// NaN

일치 비교 연산(===)을 사용해야한다... 동등 비교 연산(==)은 형변환이 발생한다.

console.log(1 == '1') // 이것은 절대 같을 수 없지만 형 변환으로 같다고 나온다.
console.log(Number(true) == String(1)) // True

템플릿 문자열

  • 일반적인 + 를 사용하는 것보다 템플릿이 헷갈리지 않고 좋은 것 같다.
  • 파이썬의 print(f"") 또는 .format 같은 느낌이다.!!
let year = 2018;
let month = 3;
let day = 11;
let myNumber = 3;

function getTwice(x){
  return x * 2;
}

console.log('생년월인은' + year + '년' + month + '월' + day + '일')
// 템플릿 문자열
console.log(`생년월일은 ${year}${month}${day}`)
// 함수도 사용할 수 있다.
console.log(`${myNumber}의 두 배는 ${getTwice(myNumber)} 입니다.`)

자료형

  • 숫자(Number)
  • 문자열(String)
  • 불린(Boolean)
  • 특별한 자료형(null, undefined)

값이 주어지지 않은 변수에는 undefined 로 출력이 된다.
undefined는 메모리가 할당 되었지만 안에 값이 없는 것을 의미한다.!?
null은 의도적으로 값이 없을 나타낼 때 사용된다.

let x;	// undefined
let y = null;
console.log(x);

console.log(x == y) // true
console.log(x === y) // false

좋은 웹페이지 즐겨찾기