2013-03-04 9 views
8

मैं यह पता लगाने की कोशिश कर रहा हूं कि पास किए गए कई सरणी तर्कों के माध्यम से लूप कैसे करें। उदाहरण के लिए: [1,2,3,4,5], [3,4,5], [5,6,7] यदि मैं इसे किसी फ़ंक्शन में पास करता हूं, तो मेरे पास प्रत्येक तर्क के अंदर फ़ंक्शन लूप कैसे होगा (किसी भी संख्या में सरणी पारित की जा सकती है)?अज्ञात संख्या के सरणी तर्कों के माध्यम से लूपिंग

मैं यहां लूप का उपयोग करना चाहता हूं।

+0

फ़ंक्शन के भीतर जो आप 'तर्क' पर पुनरावृत्त करेंगे, और प्रत्येक तर्क के लिए, आप सरणी पर फिर से प्रयास करेंगे। – zzzzBov

+0

[डुप्लिकेट करने के लिए तर्कों की जावास्क्रिप्ट चर संख्या) के संभावित डुप्लिकेट (http://stackoverflow.com/questions/2141520/javascript-variable-number-of-arguments-to- कार्यक्षमता) – jbabey

+0

var args = तर्क; (i = 0; i swaggyP

उत्तर

12

आप इस के लिए arguments उपयोग कर सकते हैं:

for(var arg = 0; arg < arguments.length; ++ arg) 
{ 
    var arr = arguments[arg]; 

    for(var i = 0; i < arr.length; ++ i) 
    { 
     var element = arr[i]; 

     /* ... */ 
    } 
} 
2

निर्मित arguments कीवर्ड का उपयोग करें जिसमें आपके पास कितने सरणी हैं length शामिल होंगे। प्रत्येक सरणी के माध्यम से लूप के आधार के रूप में उपयोग करें।

0

उपयोग foreach, जैसा कि नीचे:

'का उपयोग सख्त';

function doSomething(p1, p2) { 
    var args = Array.prototype.slice.call(arguments); 
    args.forEach(function(element) { 
     console.log(element); 
    }, this); 
} 

doSomething(1); 
doSomething(1, 2); 
संबंधित मुद्दे