El operador typeof cuando se aplica al objeto jQuery
devuelve la cadena "function"
. Básicamente eso significa que jQuery
es una función.
Pero el tipo de tipeo se detiene allí. A diferencia de los lenguajes estáticos, el número, el orden, los modos y los tipos de parámetros no se tienen en cuenta al calcular el tipo de una función. En JavaScript, es solo una "función".
Cuando se crea una función en JavaScript, el objeto de la función se crea se da dos propiedades, length
y prototype
, y su prototipo se ajusta a Function.prototype
propiedades por lo que ha heredado como apply
y call
.
Y como otros ya han respondido, puede agregar sus propias propiedades. una función es solo un objeto.
Pero ten cuidado con "tipo". Técnicamente solo hay SIX tipos en JavaScript: nulo, indefinido, booleano, número, cadena y objeto. Entonces, la verdadera respuesta a su pregunta, ¿cuál es el tipo exacto de jQuery
es ... en realidad ... drumroll .... Objeto.
Creo que todos los objetos de JavaScript son funciones. Javascripts OO es un poco extraño hasta que te acostumbras. –
Porque los objetos son funciones y las funciones son objetos en Javascript. – deceze
Cerrar, @Matthew, todas las funciones son objetos, no al revés. –