[javascript] 자바스크립트 배열(Array) 선언과 확인하기( isArray() ) 와 typeof()로 확인 안되는 이유
[javascript] 2018. 4. 17. 02:26[javascript] 배열(Array) 선언과 확인하기( isArray() ) 와 typeof()로 확인 안되는 이유
자바스크립트(Javascript) 배열 확인하기 => isArray()
왜 typeof() 는 왜 안되는가?
자바스크립트(Javascript)에서 객체(object)와 더불어 배열이 존재한다.
아래의 예제를 보자.
var object = new Object(); // = {}; //
var array = new Array(); // = [];
var object2 = {};
var array2 = [];
console.log(typeof(object) );
console.log(typeof(object2) );
console.log(typeof(object) === typeof(object2));//true
console.log(typeof(array) );
console.log(typeof(array2) );
console.log(typeof(array) === typeof(array));//true
console.log(typeof(object) === typeof(array)); //true
console.log(Array.isArray(object) ); // false
console.log(Array.isArray(array2) ); // true
결과 화면 (크롬 또는 익스플로어에서 F12를 누르고 console탭을 누르시면 확인이 가능합니다.)
이와 같이 보게되면 typeof()의 반환 값을 보게되면 array , array2 , object, object2 모두 object로 반환하게 된다. 즉, typeof()는 object와 array를 구분할 수 없습니다. (typeof 반환에서 array를 반환할 수 없습니다.)
[typeof 반환 되는 값 MDN https://developer.mozilla.org/enUS/docs/Web/JavaScript/Data_structures]
Array.isArray() 함수를 사용하여서 Array와 Object 를 구분하시면 될거 같습니다.
'[javascript]' 카테고리의 다른 글
jsp servlet(서블렛)를 통한 ajax, object 편 (0) | 2018.04.21 |
---|---|
[javascript] 자바스크립트 셀렉트(select) 초기화 , 넣기 , 빼기 , 값읽기 (0) | 2018.04.20 |
[javascript] 자바스크립트 날짜 입력받기 (input date 날짜 받기) , datepicker (0) | 2018.04.19 |
[javascript] 자바스크립트 배열(Array) 문자 , 숫자 , 날짜 정렬(Sort)하기 (0) | 2018.04.17 |
[javascript]자바스크립트 object,Object.keys(),Object.values() 다루기 (0) | 2018.04.16 |