gpt4 book ai didi

javascript - 正在分配的内存

转载 作者:行者123 更新时间:2023-11-30 10:47:36 24 4
gpt4 key购买 nike

通过使用 Chrome 开发工具,我发现正在分配数组和对象。我检查了我的代码以寻找明显的 []{}new。但是没有。我检查了创建新 []{}new 的函数,并查看了这些函数的使用位置,我已经学会了不使用它们。那么,还可以如何分配内存?

这对我来说是个问题,因为每次 GC 启动时,它都会阻塞主循环并且动画变得不一致。

最佳答案

过度担心内存分配是徒劳的。将为所有内容分配内存,变量,数组,对象等。如果不使用变量或对象,你可以用 javascript 做很多事情,但同样,内存分配并不是 javascript 的真正领域 脚本。无论如何,任何和所有 javascript 都会使用一定程度的内存。事实上,我想说的是,如果您“学会了避免使用”对象和数组,那么您就被误导了或者正在学习错误的类(class)。

避免循环引用、避免每个作用域 过多的内存消耗以及通常避免使用紧密循环和其他不良做法锁定浏览器线程更为重要。例如,在 for 中循环,避免重新计算 for 中的限制声明:for (var x = 1; x < myString.length; x++)应该是 var max = myString.length; for(var x = 1; x < max; x++) .即使是这样的优化(-大多数情况下的优化)对 javascript 开发人员来说也不是关键,因为浏览器正在处理整体内存分配/消耗以及垃圾收集超出范围的引用。

有关避免泄漏的实际操作的更多信息,请查看这篇文章:http://www.javascriptkit.com/javatutors/closuresleak/index.shtml (或类似的其他文章)。否则,只要您没有泄漏 内存,任何脚本都会分配/使用一定程度的内存;这是不可避免的。考虑到现代 PC 有 千兆字节 的可用内存,您的脚本微不足道的 千字节 甚至 兆字节 内存使用并不重要 - 就是这样内存是用来使用它的。

关于javascript - 正在分配的内存,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7349344/

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