我正在编写一个库,我需要存储一些数据才能快速处理DOM元素。我不知道是否应该存储元素ID(字符串)并执行$(document.getElementById(this.idVar)).jqueryMagic()
或存储元素对象引用(对象HTML *元素)并执行$(this.eleVar).moreJqueryMagic()
。我不介意可读性,我只是想知道每种方法之间的内存空间差异和性能差异。
提前致谢!
答案 0 :(得分:0)
如果在这个级别上的性能是一个问题,你不应该使用jQuery,这是一个比这样的细节更大的性能。 (这并不是说jQuery很糟糕。你通常会在性能上付出代价,但这通常不是问题。)
如果您多次访问该对象,一般认为存储对象引用会更快,因为您可以消除一定程度的解除引用。
如果使用jQuery,通常应该存储jQuery包装器而不是raw元素,以避免创建冗余包装器:
this.jqVar = $(document.getElementById(this.idVar))
this.jqVar.jqueryMagic()