【发布时间】:2021-06-13 17:07:11
【问题描述】:
作为默认闭包一部分的普通顶级函数如何在浏览器中暴露给 JS 控制台(出于调试原因)?
// default.js
function iWantToCallThisFunction() {
console.log("test successfull");
}
2014 年的答案似乎不再有效:https://stackoverflow.com/a/9054881/6204346
至少当前的 Chrome 找不到该功能,默认为undefined。
用export 标记函数似乎没有什么区别。保护window 中的功能可能是可能的,但不方便。有没有更好的办法?
【问题讨论】:
-
尝试
window.iWantToCallThisFunction = function() { console.log("test successfull"); }并致电window.iWantToCallThisFunction()或var iWantToCallThisFunction= function() { console.log("test successfull"); }和iWantToCallThisFunction() -
从你的文字来看,尤其是“导出”部分,你显然是在一个 esm 中,这不是全局范围。你可以做一些非常肮脏的把戏,但更应该把它添加到
window,正如你已经注意到的那样。 -
不,它实际上只是顶级 es6 代码。没有模块没有其他东西。出口只是一个测试。我想了解那些“非常肮脏的技巧”,因为它只是出于调试原因。
标签: javascript