这两者之间有什么区别,我应该使用哪一种?
$.data(this, 'timer');
VS
$(this).data('timer');
答案 0 :(得分:0)
没有区别,第二个更好用,但仅用于intellisense
答案 1 :(得分:0)
结果没有任何有意义的差异。差异实际上只是编码风格的问题。
第一个是一个更加程序化的方法,你可以调用一个全局命名空间的函数并传递几个参数。
第二个更符合面向对象的jQuery样式,你可以在其中创建一个包含一个或多个DOM元素的jQuery对象,然后在其上调用方法来影响这些元素或从这些元素中获取信息。
如果您对这两种方法之间的性能细节感兴趣,那么您必须在多个浏览器中设计性能测试和测量。但是,如果你真的想要优化给定操作的性能,你可能会完全从代码中删除jQuery,因为它很少是最快的方法。它节省了大量的编码时间,并提供了出色的跨浏览器支持(这对于大多数代码而言都非常值得),但通常会以某些性能为代价。