2015年2月26日木曜日

開発環境

  • OS X Yosemite - Apple (OS)
  • Safari, Firefox, Google Chrome(Webプラウザ)
  • Emacs (CUI)、BBEdit - Bare Bones Software, Inc.(GUI) (Text Editor)
  • JavaScript (プログラミング言語)

Head First jQuery(Ryan Benedetti(著)、Ronan Cranley(著)、O'Reilly Media)のChapter 6(jQuery and JavaScript: jQuery, I Am Your Father!)、JQUERY BLACKJACK CODE MAGNETS(No. 3363)を解いてみる。

その他参考書籍

JQUERY BLACKJACK CODE MAGNETS(No. 3363)

JavaScript(BBEdit, Emacs)

var used_cards = [],
    deal = function () {
        var i;
        for (i = 0; i < 2; i += 1) {
            hit();
        }
    },
    getRandom = function (num) {
        var my_num = Math.floor(Math.random() * num);
        return my_num;
    },
    hit = function () {
        var good_card = false,
            index,
            c,
            $d;
        do {
            index = getRandom(52);
            if (!.$.inArray(index, used_cards) > -1) {
                good_card = true;
                c = deck[index];
                used_cards[used_cards.length] = index;
                $d = $('<div>');
                $d.addClass('current_hand')
                    .appendTo('#my_hand');
                $('<imag')
                    .appendTo($d)
                    .attr('src',
                          'images/cards/' + c.suit + '/' + c.name + '.jpg')
                    .fadeOut('slow')
                    .fadeIn('slow');
            }
        } while (!good_card);
    },
    Card = function (name, suit, value) {
        this.name = name;
        this.suit = suit;
        this.value = value;
    },
    deck = [
        new Cards('Ace', 'Clubs', 11),
        new Cards('Two', 'Clubs', 2),
        new Cards('Three', 'Clubs', 3),
        new Cards('Four', 'Clubs', 4),
        new Cards('Five', 'Clubs', 5),
        new Cards('Six', 'Clubs', 6),
        new Cards('Seven', 'Clubs', 7),
        new Cards('Eight', 'Clubs', 8),
        new Cards('Nine', 'Clubs', 9),
        new Cards('Ten', 'Clubs', 10),
        new Cards('Jack', 'Clubs', 10),
        new Cards('Queen', 'Clubs', 10),
        new Cards('King', 'Clubs', 10),

        new Cards('Ace', 'Hearts', 11),
        new Cards('Two', 'Hearts', 2),
        new Cards('Three', 'Hearts', 3),
        new Cards('Four', 'Hearts', 4),
        new Cards('Five', 'Hearts', 5),
        new Cards('Six', 'Hearts', 6),
        new Cards('Seven', 'Hearts', 7),
        new Cards('Eight', 'Hearts', 8),
        new Cards('Nine', 'Hearts', 9),
        new Cards('Ten', 'Hearts', 10),
        new Cards('Jack', 'Hearts', 10),
        new Cards('Queen', 'Hearts', 10),
        new Cards('King', 'Hearts', 10),

        new Cards('Ace', 'Diamonds', 11),
        new Cards('Two', 'Diamonds', 2),
        new Cards('Three', 'Diamonds', 3),
        new Cards('Four', 'Diamonds', 4),
        new Cards('Five', 'Diamonds', 5),
        new Cards('Six', 'Diamonds', 6),
        new Cards('Seven', 'Diamonds', 7),
        new Cards('Eight', 'Diamonds', 8),
        new Cards('Nine', 'Diamonds', 9),
        new Cards('Ten', 'Diamonds', 10),
        new Cards('Jack', 'Diamonds', 10),
        new Cards('Queen', 'Diamonds', 10),
        new Cards('King', 'Diamonds', 10),
        
        new Cards('Ace', 'Spades', 11),
        new Cards('Two', 'Spades', 2),
        new Cards('Three', 'Spades', 3),
        new Cards('Four', 'Spades', 4),
        new Cards('Five', 'Spades', 5),
        new Cards('Six', 'Spades', 6),
        new Cards('Seven', 'Spades', 7),
        new Cards('Eight', 'Spades', 8),
        new Cards('Nine', 'Spades', 9),
        new Cards('Ten', 'Spades', 10),
        new Cards('Jack', 'Spades', 10),
        new Cards('Queen', 'Spades', 10),
        new Cards('King', 'Spades', 10)
    ];

$('#btnDeal').click(function () {
    deal();
    $(this).toggle();
});

0 コメント:

コメントを投稿