Javascript jQuery显示调试器而不是输出
当显示时,我试图在google中获取jQuery的输出。 然而,我的jQuery不再工作了,它一直在显示这一点debugger:///VM###. 这是我的代码:Javascript jQuery显示调试器而不是输出,javascript,jquery,google-chrome,Javascript,Jquery,Google Chrome,当显示时,我试图在google中获取jQuery的输出。 然而,我的jQuery不再工作了,它一直在显示这一点debugger:///VM###. 这是我的代码: $(document).ready(function () { var getJsonData = $.getJSON("json/travel.json") .done(function (data) { console.log("hello");
$(document).ready(function () {
var getJsonData = $.getJSON("json/travel.json")
.done(function (data) {
console.log("hello");
});
我尝试过的方法:
控制台中的输出似乎是您之前输入的数组。由于设置了“历史记录自动完成”功能,因此它会不断显示 所以,回答您的问题-否,因为console没有输出
hello
,所以请求失败。您可以在网络
选项卡上查看所有请求,并查看失败的原因。可能该URL不存在,因此可能存在对带有404的JSON的请求
它保存到服务器了吗
您没有请求保存(发布)任何内容,而是实际发出(GET)请求以检索json文件。为了使其工作,您必须从web服务器提供该文件。请参见
显然,我相信我的javascript正在被存储到磁盘缓存中。这可能是为什么即使您尝试关闭应用程序或重新启动计算机,它仍将继续存储数据。如果Ctrl+F5不起作用,请转到更多工具>清除浏览数据>勾选清除缓存和文件。这确实彻底清除了数据
内存缓存存储在RAM上,RAM的写入和访问速度更快,但在计算机关机或某些其他情况下会被清除。磁盘缓存被写入硬盘驱动器,读写速度较慢,但它将保留在磁盘上。
但是,为什么它仍然在VM而不是我的index.html上运行?控制台中的输出似乎是您以前输入的数组。由于设置了从历史自动完成,所以它会不断显示。这个从历史自动完成是什么?我没有使用任何VM来运行代码。原因可能是$.getJson将我的数据保存到本地主机吗?事实上,我在这里错误地使用了
autocomplete
,因为它不预设输出,它只是帮助您在手动向控制台输入内容时自动完成。然而,VM代表Chrome内存中的代码,而不是站点上的代码。当您手动将某些内容输入控制台时,就会发生这种情况。你能分享几个地方的截图吗?“网络”选项卡(js完成后),以及通过单击该:///VM###
字符串(这是指向部分代码的链接)的屏幕截图。代码是否到达此行:console.log()
?通过使用alert('hello')
而不是console.log
来测试这一点。它不会到达我的console.log(),但会在alert()上运行。这个虚拟机是什么意思?当尝试在其他浏览器上运行时,它现在在chrome上运行良好。但在网络站点上显示代码为200。在本地主机上运行javascript时是否会延迟?