【发布时间】:2026-01-11 04:15:01
【问题描述】:
我最近阅读了一些关于 jQuery 性能的文章,并提出了一些奇怪的问题。
-
我可以/应该缓存
$(window)吗?如果我这样做了,会影响
resize、scroll、width、scrollTop...等吗? -
我可以/应该缓存
$(document)吗?由于我们使用了很多鼠标操作,我应该使用
var doc = $(document);吗? -
我可以总是在一大段代码中缓存
$(this)吗?至于
var self = $(this);,在什么情况下self可能不同于$(this)?
【问题讨论】:
-
您可以缓存
$(window),但您是否配置文件以检查这对您的应用程序是否有用? -
当
$(this)可能会根据范围发生变化时,使用var self = $(this)很有用,并且您需要参考原始$(this) -
我同意你不应该称之为缓存。但是jquery的人就是这么做的。所以我们可能会坚持下去以更好地理解。
-
@Johan 好吧,我从那些“教程”中学到了
caching这个词。如果您用 Google 搜索jQuery performance,您可能会发现 99/100 的文章都在说cache your object: var foo = $("#bar");。 -
缓存是一个透明地存储数据的组件,以便可以更快地处理未来对该数据的请求。如果这是内存或变量,它仍在缓存中。
标签: jquery performance caching