我们说我有第一个脚本,其中包含函数导出
function export(*params*){
let callerScriptReference = ....;
.....
}
然后我有一个第二个脚本,我调用这个函数
export(*params*);
是否可以从导出函数体内引用第二个脚本?我想获得一些"数据 - *"来自该脚本标记的属性。
脚本以随机顺序添加到页面中。
希望你理解我想要完成的事情:D
感谢您的任何建议或帮助。
答案 0 :(得分:1)
据我所知,没有内置方法可以获取有关包含调用代码的<script>
标记的信息,因此您需要明确传递它。
function export(callerscript, otherparams...) {
...
}
来电者会这样做:
export(document.currentScript, otherargs...);
如果您在函数中执行此操作,则可以使用IIFE捕获闭包变量中的值。
var someFun = (function(curScript) {
return function(stuff) {
export(curScript, stuff);
}; })(document.currentScript);
someFun(stuffArgs);
答案 1 :(得分:0)
如果您在浏览器中,则可以在html正文中添加另一个脚本标记。这将允许该函数共享相同的范围。
如果您在nodejs中,如果您使用的是ES5(目前支持最多):
module.exports = function funName(){}
var funName = require('script1');