javascript - JSFiddle 在哪里存储我的变量?

标签 javascript debugging google-chrome-devtools jsfiddle

介绍性评论:作为实验,我正在使用 JSFiddle 调试一些代码。我可以轻松添加 debugger; 语句或在 alert(); 窗口中显示内容。我的问题在于 Chrome 控制台:我想用它来打印变量的值。

说明性示例:在 JSFiddle 上,我将以下代码放入 JavaScript 框中。

var sampleVar = "test value";

代码运行后,我似乎无法查看变量值。我可以在程序运行完成之前查看它们,方法是添加 debugger; 语句并在控制台上评估 sampleVar。 (如 this (ridiculously simple) JSFiddlethis screenshot 所示。)

进一步推断:但我希望能够打开完整的程序并探究它的变量。我有办法做到这一点吗?我尝试打开控制台并评估 sampleVar 但它似乎在顶级范围内未定义。 (如图this screenshot.)

问题重述 JSFiddle 将我的变量放在哪里?我如何访问它们?

<小时/>

后记:抱歉链接到imgur,我认为直接添加图片会分散对问题的注意力。

值得注意的比较:将调试 JSFiddle 的难度与调试 JSBin 的容易程度进行对比。如果我在 JSBin 中打开“控制台”框架,我可以调用我在代码中声明的变量,没有问题。

最佳答案

Where is JSFiddle putting my variables? How do I access them?

它把它放在你告诉它的地方。 JSFiddle 默认将所有代码放入 window.onload 函数中,这意味着您使用 var 声明的所有内容都是该回调的本地代码。 (您当然可以显式设置 window 属性)。这是such an example .

此设置可以从左侧菜单更改 - 如果将其移至 headbody,您将可以从开发人员工具访问它们。此外,值得一提的是,如果您在代码运行时调用调试器,您将可以访问这些变量,即使它们位于闭包中。

关于javascript - JSFiddle 在哪里存储我的变量?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22393094/

相关文章:

javascript - 对象 HTMLSelectElement 通过 this 关键字访问值

javascript - 如何避免事件和悬停背景

android - 没有向 HAL 提供足够的数据,预期位置

jquery - 为什么我收到 "event.returnValue is deprecated..."以及如何纠正它?

javascript - Html 和 javascript 验证码(不是真正的生成)不起作用

javascript - 错误 : write EPIPE with node. js 和 imagemagick

c - Netbeans 8.1 C 调试器错误?

visual-studio - 调试时是否可以从目标目录启动外部程序?

android-webview - Chrome Inspector 在 AVD 中显示 Android Webview 但不在实际设备上

javascript - 在chrome扩展中获取 "Remote Address"(IP地址)