मैं ब्लैकजैक गेम में निपटाए गए हाथों/परिणामों के प्रत्येक दौर का ट्रैक रख रहा हूं। मुझे प्रत्येक "राउंड" को एक पंक्ति के रूप में आउटपुट करने की आवश्यकता है। राउंड की संख्या 'x' होती है। मैं प्रत्येक दौर के परिणामों को एक बड़ी सरणी में संग्रहीत कर रहा हूं। मेरी समस्या यह है कि मेरे पास मेरी बड़ी सरणी और 2 संख्यात्मक के भीतर 2 सरणी हैं। मुझे गोल परिणामों के रूप में प्रति पंक्ति 4 'ऑब्जेक्ट्स' में से प्रत्येक को आउटपुट करने की आवश्यकता है। मैं यह नहीं समझ सकता कि संख्यात्मक वस्तुओं के साथ मिश्रित गैर-संख्यात्मक सरणी वस्तुओं को 'पार्स' कैसे करें। क्या मुझे सिर्फ दो सरणियाँ, एक वस्तु और एक संख्यात्मक बनाना चाहिए और उन्हें अलग से आउटपुट करना चाहिए? आउटपुट लक्ष्य पहली पंक्ति है: 3,2,9,6; 10,2,6; 3,10 और इसी तरह प्रत्येक दौर के लिए, एक पंक्ति।

    <script>
    var ph = [3,2,9,6]; var dh = [10,2,6]; var seq = 3, var bet = 10; var result; 
    allhands.push(ph);allhands.push(dh);allhands.push(seq);allhands.push(bet)
    //allhands looks like this:[[3,2,9,6], [10,2,6], 3,10]
    function showallhands(){    
    for (e = 0;e<allhands.length;e++){
    for (f = 0; allhands[e][f];f ++){
    result += allhands[e] + allhands[e][f]+";"+"<br >" ;
    }          
    }
    return result;
    }
    </script>

result = showallhands();
document.getElementById("ALLhands").innerHTML = result;  
1
JeffMAtlanta 27 पद 2019, 19:07

1 उत्तर

सबसे बढ़िया उत्तर

एक तरीका यह है कि गेम ऑब्जेक्ट बनाया जाए और फिर उसमें हाथों को स्टोर किया जाए:

        function Game() {
            this.ph = [3, 2, 9, 6];
            this.dh = [10, 2, 6];
            this.seq = 3;
            this.bet = 10;
            this.getHands = function () {
                return this.ph + ';' + this.dh + ';' + this.seq + ';' + this.bet + ';<br>';
            };
        };

        var games = [];
        games.push(new Game());
        games.push(new Game());
        games.push(new Game());

        var result = "";

        function showallhands() {
            for (e = 0; e < games.length; e++) {
                result += games[e].getHands();
            }
            return result;
        }

        result = showallhands();
        document.getElementById("ALLhands").innerHTML = result;

यदि आप सरणी रखना चाहते हैं और ओओपी का उपयोग नहीं करना चाहते हैं, तो मुझे लगता है कि यह चाल करेगा:


 var arr = [
            [3, 2, 9, 6],
            [10, 2, 6], 3, 10, "hello"
        ];

        arr.forEach(function each(item) {
            if (Array.isArray(item)) {
                item.forEach(each);
            } else {
                console.log(item);
            }
        });

0
iProgramGUIs 27 पद 2019, 17:57