繁体   English   中英

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

[英]How to make a global javascript function and variable?

我在一个文件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 = new Engine(窗口);

的console.log(myEngine.width); myEngine.reset( '600像素');

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

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM