Como é $ ('h1') logar para o console da web como uma matriz no jQuery?

Se você fizerconsole.log($('some selector')) no navegador, ele retorna o que parece ser uma matriz (primeira linha):

Mas note que não é uminstanceof Arraymas na verdade éajQuery objeto.

Quando você fazconsole.dir($('h1')), mostra que é realmente o objeto jQuery.

A questão é, como eles estão fazendo com que pareça que é uma matriz no console da web? Notei na fonte jQueryAqui eles adicionam referência a alguns métodos Array e Object, eAqui eles adicionamtoArray (e fatia e outros) para ojQuery objeto. O console da web está de alguma forma verificando esses métodos e se ele encontrar um (toArray, indexOf, slice, etc.), imprime como uma matriz? Gostaria de obter esse comportamento de qualquer objeto personalizado, como oEmber.ArrayProxy. Atualmente, quando você registra oEmber.ArrayProxy isto mostra> Object ou qualquer outra coisa, mas seria bom mostrar isso como uma matriz.

Alguma ideia?

questionAnswers(1)

yourAnswerToTheQuestion