作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
如果您在 javascript 中使用过的对象无效,您是在节省可能的愚蠢垃圾回收吗?
例如。
如果您在 javascript 中遍历某些用户:
var users = [
{ FirstName: "Chris", LastName: "Pearson" },
{ FirstName: "Kate", LastName: "Johnson" },
{ FirstName: "Josh", LastName: "Sutherland" },
{ FirstName: "John", LastName: "Ronald" },
{ FirstName: "Steve", LastName: "Pinkerton" }
];
// Do something with the data, perhaps put it in a table
users = null;
现在是否值得取消该列表?有没有人了解性能提升背后的科学原理,或者这是在浪费时间等?
有时很难向人们解释你为什么要以某种方式做某事,我知道它在很多情况下保存了我的培根,当然,C++,但在 javascript 中,是否有任何实验来找出它是否值得javascript?找到一个我可以信任的 sizeof 函数,这让我哭了......如果有人已经做过这种实验,我将非常感激看到你的成果!
最佳答案
视情况而定。例如这里是没用的:
function putUsersInTable(){
var users = [
{ FirstName: "Chris", LastName: "Pearson" },
{ FirstName: "Kate", LastName: "Johnson" },
{ FirstName: "Josh", LastName: "Sutherland" },
{ FirstName: "John", LastName: "Ronald" },
{ FirstName: "Steve", LastName: "Pinkerton" }
];
// Do something with the data
users = null; // Useless, the data could be GC'd anyways
}
这里它将允许数据在其他情况下不能被 GC 处理:
function putUsersInTable(){
var users = [
{ FirstName: "Chris", LastName: "Pearson" },
{ FirstName: "Kate", LastName: "Johnson" },
{ FirstName: "Josh", LastName: "Sutherland" },
{ FirstName: "John", LastName: "Ronald" },
{ FirstName: "Steve", LastName: "Pinkerton" }
];
// Do something with the data
// This could be an event hander in the DOM or any global variable
outsidethisscope = function(){
// This anonymous function has access to users,
// But doesn't necessarily make use of it
console.log('Hi');
}
users = null; // Removes the only reference to that array,
// allowing it to be GC'd
}
关于javascript - 如果您使 javascript 中的已用对象无效,您是否正在保存可能的愚蠢垃圾收集?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18108532/
不能制造愚蠢。具有下一个文件夹结构: /flint/double-conversion/src /燧石/愚蠢/愚蠢/ 其中/flint/folly 包含自述文件和许可证。作为in the readme
我有一个小问题,它可能在某个地方很愚蠢,但我仍然有它:) 所以问题是: 通过这样做 round(615.36*0.10, 2, PHP_ROUND_HALF_DOWN); 我希望结果是 61.53,但
我正在寻找一个只是为了大致了解应该如何正确设置标准 C++ 项目。(如果可能的话……:-p) 这是我对这个项目的要求: 基于模块(具有编译成主程序模块的库/模块) 编译跨平台 我想这样做,这样我就可以
我是一名优秀的程序员,十分优秀!