哪种jQuery方法更好:“。attr(’data-thing’);”或“.data(’thing’);”
哪一个更好:
$('div').attr('data-stuff');
要么
$('div').data('stuff');
在对此主题的评论中进行讨论后,我很想知道哪个更好用,如果有的话。
这接近于“过于基于意见”,但在这种情况下实际上有一个坚实的理由。
基本上在编码时,您应该允许您正在使用的库尽可能多地执行“繁重的工作”。 您应该尽可能地将代码与基础数据隔离开来。
一种方法是使用最具体的呼叫。 在这种情况下,您有一个已经提取数据的方法,您只需告诉它您需要的数据。 应避免使用更通用的方法来复制数据提取行为。
这样做会使您的代码略微缩短。 它也使它更安全(例如,没有机会将’数据”拼写为“dota-”或类似的),这意味着如果库中有任何修复或黑客攻击(例如,解决浏览器限制)使用特定的浏览器)然后您将从中受益。
它还可以使您免受库中数据结构的未来变化的影响,尽管在这种情况下不太可能。
考虑到所有人都考虑过的问题,这里是“答案”:
.data
更好,因为:
- 键入的时间稍短。
- 它可以保护您免受未来可能的数据结构更改(尽管不太可能)。
.attr
更好,因为:
- 它加载速度快近3倍。
我想我会继续自己使用.attr
,但是谢谢大家这个信息:)