जावास्क्रिप्ट यह अनुमति देता है, आप किसी फ़ंक्शन में तर्क के किसी भी मनमाना संख्या को पारित कर सकते हैं।
वे arguments
वस्तु जो एक सरणी जैसी वस्तु सांख्यिक गुण तर्क है कि जब समारोह लागू किया गया था इस्तेमाल किया गया, एक length
संपत्ति है कि है कि कितने तर्क पर इस्तेमाल किया गया है के मूल्यों से युक्त है कि में उपलब्ध हैं मंगलाचरण भी है, और एक callee
संपत्ति जो समारोह में ही लिए एक संदर्भ है, उदाहरण के लिए आप लिख सकते हैं:
function sum(/*arg1, arg2, ... , argN */) { // no arguments defined
var i, result = 0;
for (i = 0; i < arguments.length; i++) {
result += arguments[i];
}
return result;
}
sum(1, 2, 3, 4); // 10
arguments
वस्तु एक सरणी की तरह लग सकता है लेकिन यह एक सादे वस्तु, कि Object.prototype
से विरासत है , लेकिन यदि आप उस पर ऐरे विधियों का उपयोग करना चाहते हैं, तो आप उन्हें सीधेसे आवेदक कर सकते हैं ,
function test() {
var args = Array.prototype.slice.call(arguments);
return args.join(" ");
}
test("hello", "world"); // "hello world"
इसके अलावा, आप पता कर सकते हैं कि कितने तर्क एक समारोह उम्मीद की length
संपत्ति का उपयोग कर:, उदाहरण के लिए, एक आम पैटर्न एक वास्तविक सरणी सरणी slice
विधि का उपयोग करने के लिए है पाने के लिए समारोह वस्तु:
function test (one, two, three) {
// ...
}
test.length; // 3
आप कॉल कर सकते हैं है 'test.lengt एच 'फ़ंक्शन के भीतर यह जांचने के लिए कि उपयोगकर्ता कितने तर्क इनपुट करता है? –
या '[] .slice.call (तर्क) का उपयोग कर सकते हैं;' – Mahi