2011-04-24 14 views

Respuesta

13

$.isEmptyObject() no tiene en cuenta el tipo de objeto, o la forma en que fue creado; siempre que no tenga propiedades en absoluto, esta función devuelve verdadera.

$.isPlainObject() Devuelve verdadero para objetos que son puros Object casos; falso para objetos que son de cualquier otro tipo, p. Number, String, Function o un tipo personalizado.


Desde el manual para $.isPlainObject():

Descripción: Compruebe si un objeto es un objeto plano (creada usando "{}" o "nuevo objeto").

lo que comprobar un objeto vacío literal {} con esta función devolvería cierto, porque eso es una instancia de la clase normal Object. Y dado que está vacío, $.isEmptyObject() también devuelve verdadero.

+0

Wow, gracias por la rápida respuesta! – maximus

5
jQuery.isEmptyObject() 

Esta función devolverá verdadero si el objeto está vacío (como su nombre indica).

jQuery.isPlainObject() 

Esta función devolverá verdadero si es un objeto literal o (menos comúnmente) el objeto se crea con "new Object()".

Este ejemplo puede ayudar:

jQuery.isEmptyObject({ 'try' : 'this' }); // returns false 
jQuery.isPlainObject({ 'try' : 'this' }); // returns true