typeof 연산자는 값(혹은 변수)의 타입을 알아보기 위해 사용하는 도구이다.
모든 데이터, 즉 값에는 타입이 존재하는데,
숫자, 문자열, 불리언, 배열, 객체, undefined, 함수 등 종류가 많다.
여기서 문자열은 'a' 작은따옴표(혹은 큰따옴표)로 표시한다.
배열과 객체는 자료형이라고도 한다.
undefined는 변수가 선언은 되었으나 할당이 되지 않아 값을 가지고 있지 않은 상태를 말한다.
consolg.log(typeof 1); //'number'
console.log(typeof '안녕'); //'string'
console.log(typeof(1 < 2)); //'boolean'
console.log(typeof([1, 2, 3])); //'object'
블로깅을 하던 중 여기서 문제가 발생했다..! object는 배열이 아니라 객체잖아(띠용)
https://developer.mozilla.org/ko/docs/Web/JavaScript/Reference/Operators/typeof
mdn 문서로 확인해 보니 typeof로 반환 가능한 값은
알아보니 typeof는 원시 타입만 체크가 가능해서 배열을 체크할 수 없다고 한다.
배열은 object의 특수한 형태 중 하나라고 한다.
'typeof 배열' 이라고 검색했더니
Array.isArray() 메서드를 써야 한다고 나왔다.
Array.isArray([1,2,3]) //true
써보니 불리언 값으로 반환이 된다.
typeof | 값(혹은 변수)의 타입을 알아보기 위해 사용하는 도구 |
type | 1. 숫자
2. 문자열 'a' 3. 불리언 4. 배열 [ a, b, c ] 5. 객체 {키 : 값} 6. undefined 7. 함수 |