dataset vs .data - Différence?
Je suis en train de lire quelques valeurs données dans les champs d'attributs. J'ai vu deux façons de lire les données comme indiqué ci-dessous:
var webappData = document.getElementById('web-app-data'),
rating = webappData.dataset.rating;
OU
var effectData = $('.effects-list li'),
creative = effectData.filter('[data-creative]').data("creative");
Ma question est de savoir lequel de ces a de meilleures performances, ou ont-ils vraiment différents?
J'ai une page avec de nombreux attributs de données que je suis accédant et je voudrais utiliser la méthode qui a le meilleur rendement.
Des conseils sur la compréhension de la différence entre les deux serait appréciée. Alors que je suis en train de regarder la performance spécifiquement si il y a d'autres raisons d'utiliser l'un sur l'autre, je voudrais savoir ce que bien.
source d'informationauteur L84
Vous devez vous connecter pour publier un commentaire.
dataset
est un natif de la propriété d'un élément qui contient les attributs de données, il est une nouvelle(ish) en outre, et en tant que tel est pris en charge uniquement dans IE11+, Chrome 8+, FF 6+ etc.Plus du navigateur croix solution serait d'obtenir l'attribut directement
data()
est une méthode jQuery, et d'autres que l'utilisation de l'HTML5, l'attribut de données pour définir la valeur initiale si aucun n'existe, à l'interne, il n'a rien en commun avec l'ensemble des données.data()
stocke toutes les données, vous passez dans un objet interne créé par jQuery, donc ce ne serait par exemple l'échecque les données ne sont pas stockées dans les attributs à tous, mais en interne, par jQuery.
Le jQuery équivalent d'obtenir et de définir les données d'attribut serait
attr()
Le natif méthodes sont probablement plus rapide, mais comme ils ne sont pas vraiment comparable à du jQuery
data()
il n'a pas vraiment d'importance, mais pour obtenir les données d'attribut je pense que la méthode la plus rapide avec la meilleure prise en charge du navigateur serait