JavaScript 데이터 형변환
console.log(123+'a') // 123이 String으로 변환되어 '123a'가 됩니다.
- javascript의 데이터들은 상황에 따라 적절한 데이터 타입으로 변환됩니다.
동등 연산자와 일치 연산자
// true로 출력되는 값
console.log(123=='123')
console.log(1==true)
console.log(0==false)
console.log(null==undefined)
console.log(''==false)
- 동등 연산자(==) 를 사용하면 데이터 타입 변환을 확인해 볼 수 있습니다.
// false로 출력되는 값
console.log(123==='123')
console.log(1===true)
console.log(0===false)
console.log(null===undefined)
console.log(''===false)
- 일치 연산자(===)는 타입까지 확인하므로 위와 같이 비교를 하면 false가 됩니다.
typeof
const data = {
string: '123',
number: 15,
boolean: true,
null: null,
undefined: undefined,
array: [1,2,3],
function: function(){}
}
console.log(typeof data)
console.log(typeof data.string)
console.log(typeof data.number)
console.log(typeof data.boolean)
console.log(typeof data.null)
console.log(typeof data.undefined)
console.log(typeof data.array)
console.log(typeof data.function)
console.log(typeof data.string === 'string')
- typeof 를 사용하여 변수의 타입을 확인할 수 있습니다.
- typeof는 타입명을 값으로 가진 String데이터를 반환합니다.
.constructor
console.log(data.constructor)
console.log(data.string.constructor)
console.log(data.number.constructor)
console.log(data.boolean.constructor)
console.log(data.array.constructor)
console.log(data.function.constructor)
console.log(data.string.constructor === 'string') //false
console.log(data.string.constructor === String) //true
// 에러가 발생하는 타입
console.log(data.null.constructor) // error
console.log(data.undefined.constructor) // error
- constructor속성을 이용하여 타입을 확인할 수도 있습니다
- null과 undefined는 사용시 에러가 발생합니다.
- 타입을 String으로 반환하는 typeof와 달리, 데이터의 constructor 속성을 반환합니다.
'자바스크립트' 카테고리의 다른 글
JavaScript 구문 - 조건문과 반복문 (0) | 2024.04.10 |
---|---|
JavaScript 연산자 (0) | 2024.04.06 |
JavaScript 데이터 - 참과 거짓 (0) | 2024.04.03 |
JavaScript 데이터 (0) | 2024.04.03 |
JavaScript 시작하기 (1) | 2024.04.03 |