如何打印打开页面的所有脚本代码?
所有脚本都位于 .js 本地文件中或通过附加添加
document.body.appendChild(script);
我尝试通过 var scriptList = document.scripts; 或从 HTML 获取节点来获取它。我得到的只是 HTMLCollection 的对象,其中包含脚本数组(没有我需要的代码)或
<body>
<script src="one.js"></script>
<script src="two.js"></script>
<script src="three.js"></script>
<script type="text/javascript".src="https://xxx.js/"></script>
</body>
我从未得到的是实际运行的代码。有什么想法如何获得它吗?我相信该代码位于浏览器内存中的某个位置,因为该代码正在运行,并且我可以在检查器中看到它。
最佳答案
试试这个,现在从 src 获取代码:
var scriptList = document.scripts;
var code = "";
for (var i = 0; i < scriptList.length; i++) {
var req = new XMLHttpRequest();
req.onload = function () {
code = code + req.responseText;
}
req.open("GET", scriptList[i].src);
req.send();
}
alert(code);
关于JavaScript打印运行代码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49070271/