如果我这样做,我会保存任何内存或性能
function foo(){
var $this = $(this);
var class = $this.class();
var attr = $this.attr();
}
通过这个
function foo(){
var class = $(this).class();
var attr = $(this).attr();
}
答案 0 :(得分:1)
对于简单的应用程序,性能差异可能很小,但它存在。考虑$()
是一个函数,因此每次调用该函数时,引擎都必须执行该函数中的代码。引用现有变量将比执行可能较大的函数快得多。
换句话说,这是:
var x = someFunction();
someOtherFunction(x);
总是比这更快:
someFunction();
someOtherFunction(someFunction());