728x90
반응형
반응형
728x90
1. typeof 연산자
- JavaScript의 typeof 연산자는 데이터 타입을 확인하는 데 사용됩니다. typeof는 다양한 타입의 값에 대해 문자열 형태로 해당 타입을 반환합니다.
- 이 연산자를 통해 변수나 값의 타입을 확인하고, 조건문에서 이를 활용해 코드의 흐름을 제어할 수 있습니다.
2. 문법
- value는 타입을 확인하고자 하는 값이나 변수입니다.
- 반환값: 데이터 타입을 나타내는 문자열을 반환합니다.
typeof value
3. 반환값 정리표
값 | 반환 문자열 | 설명 |
undefined | "undefined" | 변수가 정의되지 않거나 값이 없음 |
null | "object" | JavaScript의 오래된 버그로 null을 객체로 식별함 |
Boolean | "boolean" | true 또는 false 값 |
Number | "number" | 숫자형 값 |
BigInt | "bigint" | 정수형 큰 숫자 (BigInt 타입) |
String | "string" | 문자열 값 |
Symbol | "symbol" | Symbol 값 |
함수 | "function" | 함수 |
객체 (배열, 객체 등) | "object" | 객체나 배열, null 등 복합 타입 |
4. 기본 예제
- typeof 연산자를 활용하여 어떤 타입인지 확인할 수 있습니다.
console.log(typeof 42); // "number"
console.log(typeof 'Hello'); // "string"
console.log(typeof true); // "boolean"
console.log(typeof undefined); // "undefined"
console.log(typeof { name: "John" }); // "object"
console.log(typeof [1, 2, 3]); // "object" (배열도 객체로 인식)
console.log(typeof null); // "object" (JavaScript의 오래된 버그)
console.log(typeof function() {}); // "function"
console.log(typeof Symbol("id")); // "symbol"
console.log(typeof 123n); // "bigint"
5. 활용 예제
- 조건문을 활용하여 입력된 값의 타입을 알아낼 수 있습니다.
function processValue(value) {
if (typeof value === "string") {
console.log("This is a string:", value);
} else if (typeof value === "number") {
console.log("This is a number:", value);
} else if (typeof value === "boolean") {
console.log("This is a boolean:", value);
} else if (typeof value === "object") {
console.log("This is an object:", value);
} else {
console.log("Unknown type:", typeof value);
}
}
processValue("Hello"); // This is a string: Hello
processValue(42); // This is a number: 42
processValue(true); // This is a boolean: true
processValue({}); // This is an object: [object Object]
6. 마치며
- typeof는 변수나 값의 데이터 타입을 확인하는 연산자로, 문자열 형태의 타입을 반환합니다.
- 모든 데이터 타입을 확인할 수 있지만, null이 "object"로 반환되는 점과 배열도 "object"로 반환되는 점에 주의해야 합니다.
728x90
반응형
'프로그래밍 > [javascript] 자바스크립트' 카테고리의 다른 글
[JavaScript] 자바스크립트 날짜 계산하는 예제 (0) | 2024.11.14 |
---|---|
[javascript] instanceof 연산자 설명 및 예제 (0) | 2024.11.14 |
[JavaScript] padStart(), padEnd() 메서드 (lpad(), rpad()) (0) | 2024.11.12 |
[javascript] 배열 정렬 방법 설명 및 예제 (sort, reverse) (0) | 2024.11.12 |
[JavaScript] slice() 메서드 설명 및 예제 (0) | 2024.11.11 |