¿Cómo se registra $ ('h1') en la consola web como una matriz en jQuery?

Si lo hacesconsole.log($('some selector')) en el navegador, devuelve lo que parece una matriz (primera línea):

Pero note que no es unainstanceof Array, pero en realidad eslajQuery objeto.

Cuando tu lo hagasconsole.dir($('h1')), muestra que en realidad es el objeto jQuery.

La pregunta es, ¿cómo lo hacen ver como si fuera una matriz en la consola web? Me di cuenta en la fuente de jQuery.aquí agregan referencia a algunos métodos de Array y Objeto, yaquí agregantoArray (y rebanada y otros) a lajQuery objeto. ¿Es la consola web de alguna manera la comprobación de estos métodos y si encuentra uno (toArray, indexOf, slice, etc.), lo imprime como un Array? Me gustaría sacar este comportamiento de cualquier objeto personalizado, como elEmber.ArrayProxy. Actualmente cuando inicia la sesiónEmber.ArrayProxy muestra> Object o lo que sea, pero sería bueno mostrarlo como una matriz.

¿Algunas ideas?

Respuestas a la pregunta(1)

Su respuesta a la pregunta