2011-10-21 145 views

回答

5
function isEmpty(ob){ 
    for(var i in ob){ return false; } 
    return true; 
} 

isEmpty({a:1}) // false 
isEmpty({}) // true 
+0

如果有人向'object.prototype'添加了一个方法,那么这将不起作用。在这里阅读http://yuiblog.com/blog/2006/09/26/for-in-intrigue/ – xanatos

+0

@xanatos:如果“某人”添加到“Object.prototype”,您可以追踪它,删除违规代码,然后删除有问题的开发人员。 – user113716

+0

@Ӫ_._Ӫ在现实世界中,可能有'object.prototype'扩展名。甚至还有一些非常有名的图书馆(但我不记得是哪些图书馆)...... mmmmh这个错误报告中的例子http://bugs.jquery.com/ticket/1529甚至更旧的版本'prototype'库 – xanatos