warehouse relacion menciona mart lake intelligence español entre diferencia data business big javascript jquery dataset custom-data-attribute

javascript - relacion - conjunto de datos vs.data-¿Diferencia?



menciona la diferencia entre un data warehouse y un data mart (1)

Estoy leyendo algunos valores en los campos de atributos de datos. He visto dos formas fáciles de leer los datos como se muestra a continuación:

var webappData = document.getElementById(''web-app-data''), rating = webappData.dataset.rating;

O

var effectData = $(''.effects-list li''), creative = effectData.filter(''[data-creative]'').data("creative");

Mi pregunta es cuál de estos tiene mejor desempeño o realmente difieren?

Tengo una página con muchos atributos de datos a los que estoy accediendo y me gustaría usar el método que tenga el mejor rendimiento.

Cualquier orientación sobre la comprensión de la diferencia entre los dos sería apreciada. Si bien estoy considerando el rendimiento específicamente si hay otras razones para usar una sobre la otra, me gustaría saber esto también.


dataset es una propiedad nativa de un elemento que contiene los atributos de datos, es una adición nueva (ish) y, como tal, solo es compatible con IE11 +, Chrome 8+, FF 6+ etc.

Una solución más cruzada sería obtener el atributo directamente

webappData.getAttribute(''data-rating'');

data() es un método jQuery, y además de usar el atributo de datos HTML5 para establecer el valor inicial si no existe internamente, no tiene nada en común con el conjunto de datos.

data() almacena cualquier dato que pase en un objeto interno creado por jQuery, por lo que esto fallaría

$(element).data(''key'', ''value''); element.dataset.key // undefined

como los datos no se almacenan en los atributos en absoluto, pero internamente por jQuery.
El equivalente jQuery de obtener y establecer el atributo de datos sería attr()

$(element).attr(''data-key'', ''value'');

Los métodos nativos son probablemente más rápidos, pero como no son realmente comparables a los data() de jQuery data() en realidad no importa, pero para obtener el atributo de datos, creo que el método más rápido con el mejor soporte para navegadores sería

var rating = webappData.getAttribute(''data-rating'');