자바스크립트 배열 판별법 (javascript adjudge Array)
javascript adjudge Array
배열은 typeof 연산자를 사용하면 "object"가 반환됩니다alert(typeof [10, 13]); //"object"
배열도 객체이니 이것은 틀린말이 아니지만 그리도움이 되지 않습니다.
length를 이용하거나 slice()를 사용 하여 판별 할 수 있지만 배열과 객체가 똑같으면
어떤식으로 구분할 방법이 없습니다.
instanceof Array를 사용할수 있지만 IE에서 안먹히는 버전도 있어 제약이 생깁니다.
ECMAScript 5에서는 Array.isArray()라는 새로운 메서드가 정의되었다. 이 메서드는 인자가 배열이면 true를 반환합니다.
alert(_array.isArray([1,2])); //true;
Array.isArray({name:"park","time":10}); //false반환
이런 방법도 있습니다
object.prototype.toString()을 사용하면 배열일경우 [object Array]가 반환이 됩니다
객체면 [object, object]가 반환이 됩니다
댓글 없음:
댓글 쓰기