【发布时间】:2014-06-29 02:10:38
【问题描述】:
我正在读取数据属性字段中的一些值。我见过两种读取数据的简单方法,如下所示:
var webappData = document.getElementById('web-app-data'),
rating = webappData.dataset.rating;
或
var effectData = $('.effects-list li'),
creative = effectData.filter('[data-creative]').data("creative");
我的问题是,其中哪些性能更好,或者它们真的不同?
我有一个页面,其中包含许多要访问的数据属性,我想使用性能最佳的方法。
任何有关理解两者之间差异的指导都将不胜感激。当我特别关注性能时,如果有其他原因需要使用其中一个,我也想知道这一点。
【问题讨论】:
-
我会说纯 JS 更快或等于 jQuery
-
因为 .dataset 是纯 Javascript 我想它应该比使用 .data() 更快(毕竟,至少你错过了一个函数调用),尽管差异可能是几毫秒。您始终需要考虑的唯一一件事是,并非每个浏览器都知道 .dataset。浏览器兼容性参考这里:developer.mozilla.org/en-US/docs/Web/API/HTMLElement/…
标签: javascript jquery dataset custom-data-attribute