0

昨日ここのユーザーにこのコードを書いてもらいましたが、理解に苦しんでいます。deal 関数の 9 行目まではすべて理解しています。52 の数字からランダムなカードを作成しますが、次の行ではこれが何をするのかわかりません。誰かがこのコードが何をするのか説明してくれませんか?

//Creates the deck
var Ace = 1;
var Face = 10;
var deck = [Ace, 2, 3, 4, 5, 6, 7, 8, 9, 10, Face, Face, Face];
/*Creates a deal function that can deal cards to each player. 
Use object_name.property_name = deal() to call this function.*/
var deal = function () {
    var randomcard = Math.ceil(Math.random() * 52) + 1;
    return deck[Math.floor(randomcard % 13)];
};
4

4 に答える 4

0

コードは半有効です。モジュロは、デッキから引き出すカードの種類を適切に選択していませんが、カードのスーツではありません。さらに、コードは特定のカードがすでに配られていることを考慮していないため (デッキから削除されることはありません)、複数のプレイヤーが同じカードを持っている可能性があります。

JavaScript でデッキ構造がどのように見えるかについては、このページを参照してください。

http://www.brainjar.com/js/cards/default2.asp

于 2013-06-04T20:49:20.233 に答える