Javascript Node Js Import non-module.exports脚本

Javascript Node Js Import non-module.exports脚本,javascript,node.js,require,Javascript,Node.js,Require,我想知道如何将脚本导入NodeJS中的主应用程序,就像在浏览器中一样 我知道usginrequire可以在脚本中定义module.exports,并导出函数。但我正在创建我希望是全局的对象。我举个例子: 主应用程序 require('./objects.js'); var smth = 234; var obj = new ObjectDefElsewhere(smth); obj.doSmth(); function ObjectDefElsewhere(val){ this.val

我想知道如何将脚本导入NodeJS中的主应用程序,就像在浏览器中一样

我知道usgin
require
可以在脚本中定义
module.exports
,并导出函数。但我正在创建我希望是全局的对象。我举个例子:

主应用程序

require('./objects.js');
var smth = 234;
var obj = new ObjectDefElsewhere(smth);
obj.doSmth();
function ObjectDefElsewhere(val){
    this.val = val;

    this.doSmth = function(){
        console.log(this.val);
    }
}
OBJECTS.JS

require('./objects.js');
var smth = 234;
var obj = new ObjectDefElsewhere(smth);
obj.doSmth();
function ObjectDefElsewhere(val){
    this.val = val;

    this.doSmth = function(){
        console.log(this.val);
    }
}
而不是像往常一样

module.exports:{objdefewhere:objectdefewhere}

让你看起来像

var Objects=require('Objects.js');新对象


谢谢

全球化是不好的。但是,您不需要导出具有属性的对象,也可以导出
objectdefewhere
构造函数本身。您的意思是将
module.exports=objectdefewhere
?但是如果我在一个文件中定义了2+个构造函数呢。我想知道,因为我想建立一个游戏,并考虑为不同类型的对象制作不同的文件。例如:文件
敌人.js
将提供构造函数:
僵尸()
战士()
忍者()
等等。。。而文件
wearms.js
将提供
剑()
弓()
等等……是的,这就是我的意思。对于多个导出,您当然可以使用一个对象(您确实应该这样做,而不是污染全局范围)太棒了!谢谢,那我就做!