gpt4 book ai didi

JavaScript:缓存深度嵌套的变量是否更快?

转载 作者:数据小太阳 更新时间:2023-10-29 04:38:51 27 4
gpt4 key购买 nike

假设我有一个深深嵌套在我经常重复使用的巨大对象中的变量:

i = 10000000;
while (i) {
i--;
document.write( bigobject.a.b.c.d.e.f.g.h.i.j.k.l.m.n.o.p );
}

将其缓存在循环外的新变量中会更快吗?

v = bigobject.a.b.c.d.e.f.g.h.i.j.k.l.m.n.o.p

并在我的循环中使用缓存的变量?

document.write ( v );

对于不太注重视觉的人:JavaScript 变量是自动缓存的还是每次请求时浏览器都必须搜索较大的变量?

最佳答案

与所有重要的性能问题一样,最好在 jsperf.com 等工具中测试您的具体情况,这样您就可以衡量您关心的确切情况,并且您还应该在多个浏览器中运行测试以确保您要测量的是语言实现的一般特征,而不仅仅是某个浏览器的特性。

在回答您的问题时,如果您要多次访问深度对象引用,缓存它通常会更快。

在具体的例子中,我在这里编码:http://jsperf.com/cache-deep-reference ,缓存引用在 Chrome 中快了 2 倍多,在 IE10 中快了 4 倍多。

关于JavaScript:缓存深度嵌套的变量是否更快?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17376811/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com