0

在 JavaScript 中,我正在构建类似井字游戏(但更复杂)的东西。任何给定的字段都可以有三个值:黑色块、白色块或什么都没有。你会用什么来表示这些值?考虑到你一次要经过大约 300 多个。

我首先想到的是“B”、“W”和“N”。然后我想到了 0、1 和 2,现在我在考虑真、假和空。就 JavaScript 而言,哪个是更好的选择?快点?更地道?

4

2 回答 2

2

它不会产生速度差异。

就个人而言,我会选择 0,1,2。

一般来说,我会避免在 undefined、null 和 false 之间做出区分。这只会在某个条件下导致一些错误。在您的情况下,无论如何, undefined 似乎是一个非常糟糕的选择,因为该字段的内容不是未定义/未知的,它被明确定义为空。

于 2013-03-13T23:01:32.130 回答
1

正如 Thilo 指出的那样,您希望避免有多个值可以使语句if(position)评估position为真。不过,我可能会使用 usingnull作为空值,因为这对我来说似乎更有意义。

对于其他价值观,我肯定会选择难以混淆的东西。字符串不是很好,因为您最终会使用B而不是沿线W 某处1并得到烦人的错误,因此并且2可能不是坏的选择。

但是,另一种选择是为此目的制作自己的“枚举” - 只需拥有var black = new Object()var white = new Object()使用它们。这样一来,您所指的内容就比1和更清楚2。很多,不过。

于 2013-03-13T23:07:49.727 回答