javascript 是否能像java一样去做 内存分析?
比如,java中能对一个对象进行堆栈分析,初始化到调用,都能明确的堆、栈、静态块,数据块和代码块的定位。
class Cat{
String name;
public Cat(String n){
this.name = n;
}
}
Cat tom = new Cat("Tom");
如此后能够对具体到形参n的栈定位,name的堆定位类似。
然而javascript能不能做同样的分析呢?如:
function makeCounter() {
var i = 0;
return function () {
console.log(++i);
};
}
var counter = makeCounter();
counter();
counter();
不要使用作用域和闭包的解释,而是使用内存分析的方式来指出,i的位置(堆/栈),匿名函数的位置,counter的位置和makeCounter的位置等。
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
try it, may be help.
http://pythontutor.com
理论上是可以,但是为什么要做? 一般脚本都用来写复杂的逻辑,编写好的api使你的脚本更贴近领域(domain)才是有用的。