使用条件与省略它时的jQuery / JavaScript效率比较

时间:2014-03-08 17:56:07

标签: javascript jquery

问题描述:

假设我想使用jQuery.hide()隐藏元素。在这个例子中,无论何时单击构造函数,我都想隐藏#some_div。那么,我应该检查一下是否可见,或者我是否应该完全省略条件?

实施例

$('#button').click(function() {
  if ($('#some_div').is(':visible')) {
    $('#some_div').hide();
  }
}

...与...

$('#button').click(function() {
    $('#some_div').hide();
}

这似乎是一种折腾。如果DIV只显示一半的时间,那么有一半的时间它不需要隐藏它。然后,在条件中需要执行比较的另一半时间将其隐藏起来。

那么哪种做法更好?哪个更有效/更快地执行?

1 个答案:

答案 0 :(得分:1)

似乎只是隐藏比首先测试更快:http://jsperf.com/testing-visibility-vs-just-hiding

话虽如此,这不太可能成为您申请的瓶颈。因此,我建议您编写对您来说更自然的代码,并开始进行这些微优化如果您发现它太慢了。大多数时候,没关系。