Есть ли разница в производительности между этими тремя ниже, когда дело доходит до получения значения атрибута элемента?
a) функция attr()
$('div').click(function() {
var div_id = $(this).attr('id');
// rest of the logic
});
б) свойство объекта объекта события
$('div').click(function(e) {
var div_id = e.target.id;
// rest of the logic
});
c) чистый подход JS
$('div').click(function() {
var div_id = this.id;
// rest of the logic
});
Несомненно, вариант c лучше подходит для других:
$('div').click(function() {
var div_id = this.id;
// rest of the logic
});
потому что это доступно в самом браузере, и вы не используете другой метод любой внешней библиотеки, такой как два других.
e.target
- это стандартная функция DOM. Даже если e
прибывает из jQuery.
$(this).attr('id')
вместоthis.id