jquery core: Simplifying isEmptyObject() and adding tests.
authorAriel Flesler <aflesler@gmail.com>
Thu, 16 Jul 2009 15:16:44 +0000 (15:16 +0000)
committerAriel Flesler <aflesler@gmail.com>
Thu, 16 Jul 2009 15:16:44 +0000 (15:16 +0000)
src/core.js
test/unit/core.js

index 74b9fee..a71656d 100644 (file)
@@ -292,9 +292,9 @@ jQuery.extend({
        },
 
        isEmptyObject: function( obj ) {
-               var name = "";
-               for(name in obj) break;
-               return !name;
+               for(var name in obj)
+                       return false;
+               return true;
        },
 
        // check if an element is in a (or is an) XML document
index a6f490c..8aa883a 100644 (file)
@@ -599,3 +599,13 @@ test("jQuery.makeArray", function(){
 
        ok( jQuery.makeArray(document.getElementById('form')).length >= 13, "Pass makeArray a form (treat as elements)" );
 });
+
+test("jQuery.isEmptyObject", function(){
+       expect(2);
+       
+       equals(true, jQuery.isEmptyObject({}), "isEmptyObject on empty object literal" );
+       equals(false, jQuery.isEmptyObject({a:1}), "isEmptyObject on non-empty object literal" );
+       
+       // What about this ?
+       // equals(true, jQuery.isEmptyObject(null), "isEmptyObject on null" );
+});
\ No newline at end of file