Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/474.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控制台访问JSFIDLE中的变量?_Javascript_Firebug_Google Chrome Devtools_Jsfiddle - Fatal编程技术网

从Javascript控制台访问JSFIDLE中的变量?

从Javascript控制台访问JSFIDLE中的变量?,javascript,firebug,google-chrome-devtools,jsfiddle,Javascript,Firebug,Google Chrome Devtools,Jsfiddle,我使用以下代码创建了一个: var x=10; 当我尝试在控制台中查看此内容时,会得到以下结果: > x ReferenceError: x is not defined 这很有意义,因为运行控制台需要Javascript。有什么方法可以让它工作吗?控制台就像它自己的闭包,其中this===window:您只能看到控制台中定义的变量(每个命令/脚本) 因此,有两种方法可以发布控制台中可见的数据: var x=5;console.log(x);//超出您的代码,而不是作为控制台命令 wi

我使用以下代码创建了一个:

var x=10;
当我尝试在控制台中查看此内容时,会得到以下结果:

> x
ReferenceError: x is not defined

这很有意义,因为运行控制台需要Javascript。有什么方法可以让它工作吗?

控制台就像它自己的闭包,其中
this===window
:您只能看到控制台中定义的变量(每个命令/脚本)

因此,有两种方法可以发布控制台中可见的数据:

  • var x=5;console.log(x);//超出您的代码,而不是作为控制台命令
  • window.x=5;//现在x是全局的,所以在console中x可以得到5。

  • 您可以使用调试器,而不是纯控制台命令。在firebug和chrome的开发工具中,您可以设置一个断点,刷新页面(在JSFIDLE中应该运行此操作),现在您可以在范围中看到变量的实际值。(您需要重新加载页面一次,将代码放入调试器,然后在下次重新加载时,您将在document.ready事件中获得断点。)

    如果使用Chrome或Chrome,请查看开发人员控制台的底部,其中会出现字符串
    。单击它并选择
    result(fiddle.jshell.net)
    。这将更改浏览器的当前范围,您可以访问所有全局变量。另外,如果还想访问
    var
    变量,请记住将jsFiddle中的加载选项更改为
    no wrap

    更新:2014.12.01

    使用Firefox(34+)和新的Firefox开发者版,可以通过启用选择一个框架作为当前目标文档额外工具进入开发者工具,然后单击它并选择
    http://fiddle.jshell.net/_display/


    我这样做了,但变量仍然未定义。我更新了我的答案@Casebash。如果使用JSFIDLE中的
    onLoad
    选项运行代码,控制台将无法访问
    var x
    ,因为代码将被包装在一个闭包中(附加到
    onLoad
    事件的函数),并使其从控制台不可见。@Ragnarokkr谢谢,这非常有帮助@caspin对于超出范围的变量,您可以在代码中变量仍在范围内的位置设置断点,然后当遇到断点时,您可以从控制台访问变量,因为控制台位于断点暂停的位置。请将加载类型专门更改为
    无换行-底部
    选项。