2016-05-15 84 views
0

我正在创建一个简单的基于回合的多人游戏。我会有一些我想要来回传递的“单元”对象。我只想定义一次对象的定义。在C++中,我会使用头文件,而在Java中,我可以将它们实现它们,但是在JavaScript中,我不知道如何实现它。Javascript服务器/客户端共享对象定义

我可以简单地定义所有的东西两次,但我有一种感觉,在某些时候,这可能会再次出现,我宁愿现在学会正确处理它。我使用Nodejs和Javascript。

作为一个说明,我想我可以做一个简单的HTML,但我很难搞清楚如何在server.js上做同样的事情,我不确定这是甚么应该处理这个。

+1

Javascript是动态的,创建一个“定义”不是可以做得很好的事情,因为一切都可以改变,所以界面或定义是没有意义的。除非使用[TypeScript](https://www.typescriptlang.org/)之类的东西,否则不可能强制实施对象结构。 – grimurd

回答

1

我不知道我是否正确理解你的问题。但我只是在一个文件中定义单位Object并从那里导出它。您可以使用Object.freeze()Object.seal()(取决于您的用例),这将防止修改对象/添加道具。此外,如果你想通过动态值来初始化它,你会定义一个函数返回密封/冻结对象:

const unit = Object.seal({ 
    name: 'hello' 
    .... 
}); 

export default unit; 
1

创建你的逻辑和require它的模块,无论是在前端和服务器。这样你就可以将你的逻辑定义在一个地方,在需要的地方重复使用。

看看前端的http://browserify.org/