10월, 2013의 게시물 표시

유사배열 놀이

jQuery를 가지고 놀던중에... 반환값이 Object인데도 불구하고 fireBug나 크롬에서 array처럼 반환되는 것을 확인할 수 있다. ex> $ ( 'a' ) >> [ < a href = "http://vjeux.com/" > vjeux </ a >, < a href = "http://google.com/" > google </ a > ] 어떻게 했을까? console.dir을 찍으면 >> e.fn.e.init[1] 값이 나온다 클릭하여 펼쳐보자 e.fn.e.init[1] 0 :  HTMLAnchorElement context :  HTMLDocument length :  1 selector :  "#sdf" __proto__ :  Object[0] 이렇게 나오는것을 확인할 수 있다. 다른 유사객체인 Argument, NodeList를 비교해서 확인해 보자. NodeList[1] 0 :  HTMLDivElement length :  1 __proto__ :  NodeList constructor :  function NodeList() { [native code] } item :  function item() { [native code] } __proto__ :  Object 두가지 공통점을 발견할수 있다.  인덱스가 0,1... 처럼 생겼다. length값을 가지고 있다. 그럼  obj = { 0: 'a', 1:'b', length:2}; 이렇게 하면 위와 똑같이 나올까? 실험을 해보기로 했다. console.log로 찍으면 >> Object 로 나온다. 무언