Javascript $(元素).data(”dataAtribute“)vs$(元素).hasClass(”className“)
jQuery中哪个更快Javascript $(元素).data(”dataAtribute“)vs$(元素).hasClass(”className“),javascript,jquery,Javascript,Jquery,jQuery中哪个更快 $(element).data("dataAtribute"); 或 试试看——尤其是因为这很简单。请报告你的调查结果 我想,data()直接检查属性比必须在class属性中搜索值更快。我的第一个猜测是,它不必使用自定义属性,而是检查本机的.className属性 据我所知,我是对的。但我没想到会有那么大的差别 在源代码中检查这些方法(请参见和)会使问题变得非常清楚。OK。我明白了。我问这个问题的原因是因为我想根据HTML元素是否具有特定属性来做一些事情。我只是想知道(
$(element).data("dataAtribute");
或
试试看——尤其是因为这很简单。请报告你的调查结果 我想,
data()
直接检查属性比必须在class属性中搜索值更快。我的第一个猜测是,它不必使用自定义属性,而是检查本机的.className
属性
据我所知,我是对的。但我没想到会有那么大的差别
在源代码中检查这些方法(请参见和)会使问题变得非常清楚。OK。我明白了。我问这个问题的原因是因为我想根据HTML元素是否具有特定属性来做一些事情。我只是想知道(而且是懒惰的)通过类名或数据属性添加这个检查是否会有所不同。我只是想知道是否有人已经进行了测试,以节省我的时间。我没想到这个问题会引起这样的欢笑!哇-真是个惊喜!非常感谢您抽出时间来运行测试-在@Dunhamzzz之前的回答之后,我本打算做点什么,但您击败了我-并且使用了比我制作的演示好得多的演示。希望你已经证明这根本不是一个愚蠢的问题。再次感谢@嗅探,不客气!没有愚蠢的问题,只有愚蠢的人:)
$(element).hasClass("className");