繁体   English   中英

在Javascript中为棋类游戏创建对象与整数的2D数组

[英]Creating a 2D array of objects vs ints for chess game in Javascript

我目前正在使用Javascript + HTML5画布作为迷你项目制作多人国际象棋游戏。 我想知道代表董事会的最佳做法是什么。

选项1:2D对象数组-我有一个Piece模块,其中的某些功能是所有木板所共有的。 然后,我有了继承自Piece的所有作品的对象。 -然后,我可以制作一个包含32个对象的2D数组,并设置它们在板上的位置。

选项2:2D整数数组-我可以简单地制作2D网格,其中某个整数表示给定的片段。

哪个选项是“最佳”,还是有更好的选择? 我正在尝试整体采用面向对象的方法。

感谢任何输入。 多谢你们。

您不妨去找对象,学习OOP,拥有一个整体上更“小巧”的代码...如果您要编写的游戏具有明显更大的“棋盘”(即,成千上万个方块的大小),则可以考虑基于性能的整数方法。

然而,对于现代JS解释器而言,8 x 8的棋盘根本算不上什么,所以不妨发疯。

2D对象数组可能是一个更好的选择,因为您可以存储比整数数组更多的数据。 例如,可以使用具有type属性和color属性的对象,而不是使用数字5和6来表示黑白典当。

在我看来,使用对象数组来表示木板更方便,这样您就可以轻松地附加每个Piece对象及其图形表示(CSS类),而在我看来,使用数字表示一件作品是一种更为混乱的方法绝对不是OO。

暂无
暂无

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

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