3
A
回答
7
这是没有道理的。没有。
+0
感谢大家的回复。我不认为这个说法有任何真实性,但是我今天一直在想它,并且在网上找不到任何东西。再次感谢。 – user1265617 2012-04-12 21:45:29
3
号
Standard ECMA-262 ECMAScript Language Specification从(12.9):
语法
ReturnStatement:
return ;
return
[无LineTerminator这里] 表达;
[...]答
return
语句导致函数停止执行,并返回一个值给调用者 。如果Expression
被省略,返回值是undefined
。否则,返回值是表达式的值。
但事实恰恰相反:return
语句可以防止内存被释放。
从Functions and function scope - MDN # Preservation of variables:
function outside(x) {
function inside(y) {
return x + y;
}
return inside;
}
fn_inside = outside(3);
result = fn_inside(5); // returns 8
result1 = outside(3)(5); // returns 8
通知时,返回
inside
x
是如何保存下来。闭包必须保留它引用的所有作用域中的参数和变量。由于每个调用都提供了可能不同的参数,因此每次调用outside
时都会创建一个新的闭包。只有当返回的inside
不再可访问时,内存才能被释放。
相关问题
- 1. oracle总行列明智吗?
- 2. 定标器功能总是返回null
- 3. PHP邮件功能总是返回false
- 4. 为NSUInteger返回NSNotFound是否明智?
- 5. 功能与未来的返回类型总是返回无
- 6. Textbox.Text.GetTypeCode()总是返回“string”吗?
- 7. 智能复数总是智能?
- 8. canPlayType总是返回可能吗?我错过了什么吗?
- 9. 如果声明总是返回true?
- 10. 如果声明总是返回True
- 11. 总是返回一个声明
- 12. MySQL - 明智吗?
- 13. PHP/PSQL/SQL资源总是在成功查询时返回吗?
- 14. 返回值0总是在存储过程中成功吗?
- 15. Php + sql语句总是返回成功?
- 16. PendingResult.setResultCallback()总是返回statusCode成功
- 17. 总是重定向到https很明智吗?
- 18. 智能总和
- 19. 吗啡聚合管道总是返回
- 20. jQuery总是返回数组吗?
- 21. COUNT(*)总是返回结果吗?
- 22. 返回值总是暂时的吗?
- 23. System.get_property('phone_id')总是返回一个值吗?
- 24. linq2sql表达式总是返回IQueryable吗?
- 25. allocate_id总是返回正值吗?
- 26. RInterface.GetArrayToVBA()总是返回一个数组吗?
- 27. GetBodyCount()在Box2d中总是返回0吗?
- 28. 动画保留更改,功能明智
- 29. 使用功能后应该返回吗?
- 30. 我的功能总是在第一次返回false
函数总是返回,无论你是否使用'return'语句。添加'return'语句将不会清除内存或变量。 – 2012-04-12 21:13:39