Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/447.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/google-chrome/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 创建到大对象内存中的闭包如何分配内存?_Javascript_Google Chrome_Memory_Closures - Fatal编程技术网

Javascript 创建到大对象内存中的闭包如何分配内存?

Javascript 创建到大对象内存中的闭包如何分配内存?,javascript,google-chrome,memory,closures,Javascript,Google Chrome,Memory,Closures,假设我有一个很大的对象,用于很多实例。 在一个函数中,我创建了一个闭包函数,将其发送到这个对象之外的另一个地方 我在Chrome debug上看到了我如何拥有(或可以查看)两个闭包元素 :>第一个,创建到“closure”函数中:我可以看到“复制的”环境变量。没问题,我认为浏览器必须分配一些字节(因为我的闭包有两个变量和一个函数调用,我想象分配了一个简单的指针,不是吗? :>第二,我看到第一个闭包的所有父对象元素(tha是current对象实例) 这一秒我的问题是:我在chrome上看到了所有这

假设我有一个很大的对象,用于很多实例。 在一个函数中,我创建了一个闭包函数,将其发送到这个对象之外的另一个地方

我在Chrome debug上看到了我如何拥有(或可以查看)两个闭包元素

:>第一个,创建到“closure”函数中:我可以看到“复制的”环境变量。没问题,我认为浏览器必须分配一些字节(因为我的闭包有两个变量和一个函数调用,我想象分配了一个简单的指针,不是吗? :>第二,我看到第一个闭包的所有父对象元素(tha是current对象实例)

这一秒我的问题是:我在chrome上看到了所有这些信息,因为chrome使用分配的指针获取这些信息?或者所有这些信息都是通过闭包操作在内存中分配的?有指针还是对象克隆

我对内存消耗和可能的泄漏感到震惊

我知道我的英语很难理解。我希望我的问题可以理解


你所说的“通过闭包动作在内存中真正分配”是什么意思?@bergi与“真的”相关的问题…:第二个“闭包”是在我创建闭包或由chrome debug创建时在MemoryY中分配的?不,调试器只是查看它,闭包引用是在函数实例化和作用域(“执行上下文”)时创建的是在调用封闭函数时创建的。谢谢@bergi。最后一个澄清问题…然后“第二个”chrome“closure”数据由调试器创建,或者它是闭包本身的一部分?并且…闭包环境是对象或指针?这似乎是范围链。是的,它们是指向对象的指针。