javascript性能:全局变量vs jquery';美元数据()

javascript性能:全局变量vs jquery';美元数据(),javascript,jquery,performance,Javascript,Jquery,Performance,我需要在我的web应用程序中存储相对较多的JSON以供全局访问 我是否应该使用jquery的$.data(document.body,'somereference here',MyJsonObj)还是全局 我知道将$.data()绑定到document.body比绑定到jquery对象快,但这与全局变量相比如何 我对最有效的内存使用感兴趣。浏览器中的全局变量JS表示window.variable,因此我认为它会快得多 $.data(document.body,'some reference he

我需要在我的web应用程序中存储相对较多的JSON以供全局访问

我是否应该使用jquery的
$.data(document.body,'somereference here',MyJsonObj)还是全局

我知道将$.data()绑定到document.body比绑定到jquery对象快,但这与全局变量相比如何


我对最有效的内存使用感兴趣。

浏览器中的全局变量JS表示
window.variable
,因此我认为它会快得多
$.data(document.body,'some reference here',MyJsonObj)仅仅因为这只是对对象属性的一次触摸而不是函数调用,所以可以在数据调用中获取文档属性和大量人员。但另一个问题是污染全球范围。也许最好将这些数据存储在脚本的本地范围内。

Woah,儿子,小心,那些2ms的速度差会让你的应用程序速度太快。不要进行预优化,当你进行优化时,首先要分析最慢的部分。我正在开发一个移动web应用程序,当设备的内存非常短缺时…@Petah-funcy-我上周因为大胆地提出2ms的页面设置延迟是可以的,而一个更难理解的版本可以快上百倍…@Haroldo使用
$。data()
将导致与全局变量相比可以忽略不计的额外内存,因为
$.data()
最终要做的就是在DOM元素中存储对变量(甚至可以是全局变量)的引用。@AlexeiAverchenko似乎不是这样-我刚刚测试了Chrome,一个HTML数据属性将设置
.data()的初始值
但是对该数据的更改没有出现在HTML数据属性中。