2016-05-15 81 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/