有没有办法在常量时间检查javascript对象是否为空?

时间:2014-07-23 21:58:40

标签: javascript performance google-chrome

我正在寻找一种方法来检查javascript对象是否有任何属性。我经常看到的解决方案看起来像这样:

var isObjectEmpty = function(obj) {
  for (var key in obj) {
    return false;
  }

  return true;
}

然而,我发现,虽然看起来它应该在恒定时间内运行(在for循环中一次迭代后返回),但实际上它在线性时间内运行,至少在Chrome中运行。例如,请观察此测试:   http://jsperf.com/empty-map-check-performance

是否有人知道检查javsacript对象空虚的方法,该方法将在所有浏览器中以恒定时间运行?

0 个答案:

没有答案