性能:我应该初始化变量还是使用'this'?

时间:2016-03-23 17:43:31

标签: javascript jquery

我有一个可能会多次使用的点击方法。在这种方法中,我需要访问不止一次点击的按钮的id。例如:

$('.elemental-selection').click(function () {
   if(currentElement !== $(this).attr('id')) {
      if($(this).attr('id') === 'element-water') {
         ...
      }
      else {
         currentElement = $(this).attr('id');
      }
    }
});

当然对于长if块,我可以使用switch-statement,但我很好奇的是,$(this)的频繁使用会更好地被定义为变量的变量替换是$(this)(以及我想要的任何方法)。从那时起,我将引用变量而不是this

那么,更好的决定是什么?谢谢。

1 个答案:

答案 0 :(得分:0)

当你使用$(this).attr mutliple次时,这意味着jQuery必须多次执行此选择。

最好为$(this).attr(' id')创建一个变量,因为您只需执行一次获取attr所需的方法。

还要确保为此属性ID使用局部变量