如何制作全局javascript函数和变量

How to make a global javascript function and variable?

本文关键字:变量 函数 javascript 何制作 全局      更新时间:2023-09-26

我在文件hello.js中有一个变量和一个函数,如下所示:

我想调用上面的函数,并从另一个文件访问变量,比如app.js,(两个文件都在同一个文件夹中)var width=500;

function reset() {
//some code
}

我应该怎么做。

谢谢。

编辑:

实际上,

我在另一个函数中有上面的变量和函数,(我之前没有提到,我想我会得到提示并使其工作):

它是这样的:

var Engine = (function(global) {
var width = 500;
var canvas = doc.createElement('canvas'),
canvas.width = 500;
function reset() {
//some code
})(this);

现在我正在尝试访问这些函数和变量,如下所示:

console.log(Engine.canvas.width);
Engine.reset();

它不识别reset()canvas

根据您的编辑,您必须通过返回/公开变量来公开变量(或者您可以为Engine实例创建一个具有方法/属性的构造函数…)

var Engine = (function() {
    var width = 500; // private
    var canvasEl = document.createElement('canvas');
    canvasEl.width = 500;
    function reset() {
        // some reset code
    }
    return {
        canvas: canvasEl,
        reset: reset
    }
})(this);
console.log(Engine.canvas.width) // 500

您可以将任何内容分配给窗口对象,然后可以从任何地方访问它。

window.width = 500;

那么您可以使用window.width从任何位置获取值。

//app.js
var Engine = function(global){
 var engine = {
    width: global.width,
    reset: function(newValue){
      something.width = newValue;
      global.width = newValue;
    }
 }
 return engine;

}

var myEngine=新引擎(窗口);

console.log(myEngine.width);myEngine.reset('600px');

//secondFile.js//window.width='500px'