我正在寻找一种方法来检查javascript对象是否有任何属性。我经常看到的解决方案看起来像这样:
var isObjectEmpty = function(obj) {
for (var key in obj) {
return false;
}
return true;
}
然而,我发现,虽然看起来它应该在恒定时间内运行(在for循环中一次迭代后返回),但实际上它在线性时间内运行,至少在Chrome中运行。例如,请观察此测试: http://jsperf.com/empty-map-check-performance
是否有人知道检查javsacript对象空虚的方法,该方法将在所有浏览器中以恒定时间运行?