Javascript服务器/客户端共享对象定义
问题描述:
我正在创建一个简单的基于回合的多人游戏。我会有一些我想要来回传递的“单元”对象。我只想定义一次对象的定义。在C++中,我会使用头文件,而在Java中,我可以将它们实现它们,但是在JavaScript中,我不知道如何实现它。Javascript服务器/客户端共享对象定义
我可以简单地定义所有的东西两次,但我有一种感觉,在某些时候,这可能会再次出现,我宁愿现在学会正确处理它。我使用Nodejs和Javascript。
作为一个说明,我想我可以做一个简单的HTML,但我很难搞清楚如何在server.js上做同样的事情,我不确定这是甚么应该处理这个。
答
我不知道我是否正确理解你的问题。但我只是在一个文件中定义单位Object并从那里导出它。您可以使用Object.freeze()
或Object.seal()
(取决于您的用例),这将防止修改对象/添加道具。此外,如果你想通过动态值来初始化它,你会定义一个函数返回密封/冻结对象:
const unit = Object.seal({
name: 'hello'
....
});
export default unit;
Javascript是动态的,创建一个“定义”不是可以做得很好的事情,因为一切都可以改变,所以界面或定义是没有意义的。除非使用[TypeScript](https://www.typescriptlang.org/)之类的东西,否则不可能强制实施对象结构。 – grimurd