[英]How to include a javascript file into another javascript file?
I have tried several ways but nothing is working, I want to put the contents of one javascript file into the other, the code I tried is:我尝试了几种方法,但没有任何效果,我想将一个 javascript 文件的内容放入另一个文件中,我尝试的代码是:
for (k = 0; k < js_array2; k++) {
p[k]=Math.random();
if(p[k]<0.5){
$.getScript('/path/to/imported/script.js')
} else {
//Some code
}
The code in the script I want to include is:我要包含的脚本中的代码是:
var c = document.getElementById("canvas[" + k + "]");
document.getElementById("shape[" + k + "]").innerHTML = "Square";
var ctx = c.getContext("2d");
var width = c.width;
var height = c.height;
//ctx.strokeRect(0, 0, 120, 120);
var n = hour2[k];
var z = 0;
var m = minute2[k];
for (i = 1; i <= n; i++) {
for (j = 1; j <= n; j++) {
var x = 0 + (i - 1) * width / n;
var y = 0 + (j - 1) * height / n;
ctx.beginPath();
ctx.rect(x, y, width / n, height / n);
ctx.fillStyle = "cyan"
if (z < m) {
ctx.fillRect(x, y, width / n, height / n);
z = z + 1;
}
ctx.stroke();
}
}
I have tried several other ways too but this was the only one without errors but unfortunately no output.我也尝试了其他几种方法,但这是唯一没有错误的方法,但不幸的是没有 output。
In modern JavaScript it would look something like this:在现代 JavaScript 中,它看起来像这样:
export something from a file从文件中导出某些东西
export c = //whatever
import it dynamically from another file从另一个文件动态导入
if(some_condition){
{c} = await import('/path/to/imported/script.js')
// do whatever with c
}
Read more on exports on MDN: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/export阅读 MDN 上有关导出的更多信息: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/export
Read more about imports on MDN: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/import#Dynamic_Imports在 MDN 上阅读有关导入的更多信息: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/import#Dynamic_Imports
What you can do is create a function out of the second file, then check to see if K exists and the corresponding canvas exists on the page and run it for the other pages.您可以做的是从第二个文件中创建一个 function ,然后检查是否存在 K 以及相应的 canvas 是否存在于页面上并为其他页面运行它。
So for example this would be script.js:例如,这将是 script.js:
function createSquare(k){
var c = document.getElementById("canvas[" + k + "]");
document.getElementById("shape[" + k + "]").innerHTML = "Square";
var ctx = c.getContext("2d");
var width = c.width;
var height = c.height;
//ctx.strokeRect(0, 0, 120, 120);
var n = hour2[k];
var z = 0;
var m = minute2[k];
for (i = 1; i <= n; i++) {
for (j = 1; j <= n; j++) {
var x = 0 + (i - 1) * width / n;
var y = 0 + (j - 1) * height / n;
ctx.beginPath();
ctx.rect(x, y, width / n, height / n);
ctx.fillStyle = "cyan"
if (z < m) {
ctx.fillRect(x, y, width / n, height / n);
z = z + 1;
}
ctx.stroke();
}
}
}
if(typeof k != "undefined" && document.getElementById("canvas[" + k + "]") != null){
createSquare(k);
}
Then to include it:然后包括它:
$.getScript('/path/to/imported/script.js',function(){
createSquare(k);
});
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.