我有一个javascript文件:" mycode.js"
此文件包含一些JavaScript代码:
var user = JSON.parse(localStorage.getItem("m"));
d.Stacks.Set.Map = user.layer;
d.Provider = user.Provider;
var s = user.Stacks;
if (s instanceof Array){
d.geo.ref = user.stacks.name;
} else {
d.geo.ref = user.stacks.name;
}
此代码不在任何功能中。
我有多个使用此代码的文件,而不是将此代码复制并粘贴到我想要的方法中,例如链接到此" mycode.js",然后调用代码。其他文件都具有需要此代码的功能。
例如
var d = $.getJSON("main.json", function(d) {
var user = JSON.parse(localStorage.getItem("m"));
d.Stacks.Set.Map = user.layer;
d.Provider = user.Provider;
var s = user.Stacks;
if (s instanceof Array){
d.geo.ref = user.stacks.name;
} else {
d.geo.ref = user.stacks.name;
}
o.load(d);
});
我想要的是:
var d = $.getJSON("main.json", function(d) {
//HAVE THE CODE FROM "myCode.js" here
o.load(d);
});
这可能吗?如果是,怎么样?:)预先感谢。
您从中制作了一个函数,然后将其放入您在每个页面上包含的任何JS文件中。
mycode.js
function modifyD(d) {
var user = JSON.parse(localStorage.getItem("m"));
d.Stacks.Set.Map = user.layer;
d.Provider = user.Provider;
d.geo.ref = user.Stacks.name;
}
由于 d
是一个对象,并且通过引用传递在功能中,因此您实际上不需要返回任何内容。
any-file.html
<script>
var d = $.getJSON("main.json", function(d) {
modifyD(d);
o.load(d);
});
</script>
...
<script src="myCode.js"></script>