Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/361.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_Debugging_Web_Browser - Fatal编程技术网

加载的javascript模块去哪里了?我能找到它们吗?

加载的javascript模块去哪里了?我能找到它们吗?,javascript,debugging,web,browser,Javascript,Debugging,Web,Browser,我正在一个正在运行的网站上做一些研究,代码的行为让我感到惊讶 他们定义了一个名为“\uu jsload”的函数并将其绑定到窗口 window.\u jsload=function(hJ,hK){ var i=d2.getModuleInfo(hJ); i、 状态=d2.Request.LOADED; 如果(香港!==“”){ d2.run(香港黄岛) }否则{ if(window.map){ var e=新a6(“OnGetU模块故障”); e、 moduleName=hJ; 窗口、地图、火灾(

我正在一个正在运行的网站上做一些研究,代码的行为让我感到惊讶

他们定义了一个名为“\uu jsload”的函数并将其绑定到窗口

window.\u jsload=function(hJ,hK){
var i=d2.getModuleInfo(hJ);
i、 状态=d2.Request.LOADED;
如果(香港!==“”){
d2.run(香港黄岛)
}否则{
if(window.map){
var e=新a6(“OnGetU模块故障”);
e、 moduleName=hJ;
窗口、地图、火灾(e)
}
var T=document.createElement(“脚本”);
var hI=d2.MD5Mapping[hJ];
T.src=d2.Config.jsModPath+hJ+““+hI+”.js”;
document.getElementsByTagName(“head”)[0]。appendChild(T)
}
};
在run函数中,只有一个eval(),似乎没有存储任何内容以供将来使用

run:函数(T,hI){
var hM=this.getModuleInfo(T);
var hP=this.Dependency[T];
如果(hP){
对于(var hK=0;hK
然后,所有模块都以以下方式写入

/**/_jsload&&u jsload(
//这应该是模块名
“通用”,
//这应该是模块内容
'功能aO(e,i)…'
)
我有一点python编码的经验,所以我认为那些加载的模块将是特殊的对象,我可以通过调用它们来访问模块中定义的函数

将熊猫作为pd导入
pd.DataFrame()
我搜索了一些关于javascript编码的参考资料,他们提到了类似“导入/导出”和“require”的内容。导入模块后,只需调用名称即可调用导出的函数

//在sayHi.js中
导出函数sayHi(用户){
警报(`Hello,${user}!`);
}
//在main.js中
从'/sayHi.js'导入{sayHi};
警惕(说嗨);//功能。。。
sayHi(‘约翰’);//你好,约翰!
这些事情都没有发生在我正在研究的网站上。在整个模块文本中甚至没有“导出”

所以,我的问题来了

  • 是否可以在web控制台的模块中调用该函数?如果它未绑定到窗口对象,是否仍有可能

  • 我们都知道,目前很多网页都是动态的,当某个事件发生时,应该调用与之相关的某个函数。那么,这些函数保存在哪里?在web运行期间是否仍然可以访问它们


  • 3.当您无法获得打印版本的代码并设置断点时,如何调试上述模块?我试图一步一步地进行,但所有函数都进入文本版本模块,我无法创建断点。

    当某些内容被评估时。它会被放入自己的临时页面,并随机生成一个名称。据我所知。使其中断的唯一方法是单步执行或使用prepend
    调试器到字符串上。您应该能够编辑
    aO
    函数字符串以添加
    调试器你想要的地方。我的意思是应该有一个调用模块中定义的函数的地方。与使用模块的“导入/导出”方式类似,该函数是按其名称调用的。由于没有“导入/导出”,是否还有其他地方可以调用模块中定义的函数?