Is there any way to make an object return false in javascript?
var obj = new Object();
console.log(!!obj) // prints \"true\" even if it\'s empty
No. But null will convert to false.
> typeof(null)
"object"
> null instanceof Object
false
> !!null
false
To see if the object contains any properties, use (shamelessly copied from How do I count a JavaScript object's attributes?):
function isEmpty (obj) {
for (var k in obj)
if (obj.hasOwnProperty(k))
return false;
return true;
}