Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/407.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 从Chrome开发工具(js名称空间)访问变量_Javascript_Namespaces_Meteor - Fatal编程技术网

Javascript 从Chrome开发工具(js名称空间)访问变量

Javascript 从Chrome开发工具(js名称空间)访问变量,javascript,namespaces,meteor,Javascript,Namespaces,Meteor,我正在做一个关于Meteor的教程,很早的时候我就遇到了一个问题,从我的开发工具控制台访问变量“list”(在Firefox中也会发生) 显然Meteor将主js文件包装在一个匿名的自实例化函数中,这很酷,因为否则我可能自己也会这样做,但似乎我无法从浏览器访问此函数的属性,除非在函数完成之前暂停代码 我很早就开始学习教程了,所以我基本上只是建立了一个新项目并添加到了一个集合中,但无法访问它来开始填充任何演示数据。下面的屏幕截图应概述问题。如果我在第22行放置断点,我将能够访问集合 最近,我在另一

我正在做一个关于Meteor的教程,很早的时候我就遇到了一个问题,从我的开发工具控制台访问变量“list”(在Firefox中也会发生)


显然Meteor将主js文件包装在一个匿名的自实例化函数中,这很酷,因为否则我可能自己也会这样做,但似乎我无法从浏览器访问此函数的属性,除非在函数完成之前暂停代码

我很早就开始学习教程了,所以我基本上只是建立了一个新项目并添加到了一个集合中,但无法访问它来开始填充任何演示数据。下面的屏幕截图应概述问题。如果我在第22行放置断点,我将能够访问集合

最近,我在另一个项目中遇到了同样的问题,即使当我看到其他人的项目时,他们似乎也在做同样的事情,所以也许我遗漏了一些小细节


(如果您感兴趣,我正在编写Isaac Strack的《流星入门》一书中的第一个教程。顺便说一句,这段代码在他的书中非常有效)

为什么您希望以您在控制台中尝试的方式访问
列表

当封装函数(封装代码的函数)退出时,
列表
在任何方面对您都不可用-它在所有其他封装函数闭包中,因此它们的代码可以访问它,这应该是全部目的

然而,它是从“外部”世界“隐藏”的——对于不在同一范围内的任何代码,在本例中,这就是包装函数的范围


将断点放置在第22行将停止执行并“允许您”进入包装函数范围,这就是为什么在这种情况下可以看到
列表。

为什么希望以您在控制台中尝试的方式访问
列表

当封装函数(封装代码的函数)退出时,
列表
在任何方面对您都不可用-它在所有其他封装函数闭包中,因此它们的代码可以访问它,这应该是全部目的

然而,它是从“外部”世界“隐藏”的——对于不在同一范围内的任何代码,在本例中,这就是包装函数的范围


将断点放置在第22行将停止执行并“允许您”进入包装函数范围,这就是为什么在这种情况下可以看到
列表。

为什么希望以您在控制台中尝试的方式访问
列表

当封装函数(封装代码的函数)退出时,
列表
在任何方面对您都不可用-它在所有其他封装函数闭包中,因此它们的代码可以访问它,这应该是全部目的

然而,它是从“外部”世界“隐藏”的——对于不在同一范围内的任何代码,在本例中,这就是包装函数的范围


将断点放置在第22行将停止执行并“允许您”进入包装函数范围,这就是为什么在这种情况下可以看到
列表。

为什么希望以您在控制台中尝试的方式访问
列表

当封装函数(封装代码的函数)退出时,
列表
在任何方面对您都不可用-它在所有其他封装函数闭包中,因此它们的代码可以访问它,这应该是全部目的

然而,它是从“外部”世界“隐藏”的——对于不在同一范围内的任何代码,在本例中,这就是包装函数的范围


在第22行放置断点将停止执行并“允许您”进入包装函数范围,这就是为什么在这种情况下您可以看到
列表。

您可以在函数中设置
窗口属性以在任何点访问

var lists = yadayadayada;
window.lists = lists;

然后,您将能够在开发工具控制台中查看
列表。

您可以在函数中设置
窗口
属性,以便在任何时候访问

var lists = yadayadayada;
window.lists = lists;

然后,您将能够在开发工具控制台中查看
列表。

您可以在函数中设置
窗口
属性,以便在任何时候访问

var lists = yadayadayada;
window.lists = lists;

然后,您将能够在开发工具控制台中查看
列表。

您可以在函数中设置
窗口
属性,以便在任何时候访问

var lists = yadayadayada;
window.lists = lists;

然后,您将能够在开发工具控制台中看到
列表。

我不知道您为什么要这样做。调试工具的存在是有原因的。我试着为一个“黑客”解决方案做上述操作(毕竟这不是生产代码),但窗口变量导致meteor崩溃(毕竟它不是js规范的一部分,但据我记忆所及,它是一个浏览器功能)。解决方案是使用调试器或通过删除var对其进行破解,使变量成为全局变量。@funkyYes
window
在Node.js上不可用。Node.js全局变量称为
global
。在任何一种情况下,
这个
引用全局变量,只要你不是在严格模式函数或对象方法中。我不知道你为什么要这样做。调试工具的存在是有原因的。我试着为一个“黑客”解决方案做上述操作(毕竟这不是生产代码),但窗口变量导致meteor崩溃(毕竟它不是js规范的一部分,但据我记忆所及,它是一个浏览器功能)。解决方案是使用调试器或通过删除var对其进行破解,使变量成为全局变量。@funkyYes
window
在Node.js上不可用。Node.js全局变量称为
global
。在任何一种情况下,
这个
引用全局变量,只要你不是在严格模式函数或对象方法中。我不知道你为什么要这样做。调试工具正在使用中