2014-04-01 6 views
6

निर्दिष्ट करने का तरीका jsDoc में मैं इस तरह मेरी सरणी मापदंडों और सदस्यों को निर्दिष्ट कर सकते हैं:jsDoc - सरणी लंबाई

/** 
* @constructor 
* @param {Array.<string>} myArray 
*/ 
function someFunction(myArray){ 

    this.firstArray = myArray; 

    /** @member {Array.<float>} */ 
    this.secondArray = []; 

} 

वहाँ भी length, या minLength और maxLength इन सरणियों के निर्दिष्ट करने के लिए कोई तरीका है?

उत्तर

4

मुझे लगता है कि आप पूछ रहे हैं कि आप प्रकार अभिव्यक्तियों में न्यूनतम/अधिकतम लंबाई शामिल कर सकते हैं (उदाहरण के लिए, Array.<string>)।

संक्षेप में, उत्तर नहीं है। आपको प्रत्येक सरणी के विवरण में न्यूनतम/अधिकतम लंबाई दस्तावेज करने की आवश्यकता होगी।

+0

मुझे सरणी लंबाई का बिल्कुल वर्णन करने की आवश्यकता है। क्या इसे करने का कोई तरीका है? – Hitmands

1

मैंने UseJSDoc.org और Google के Closure Compiler के माध्यम से देखा है, और न ही दस्तावेज सरणी लंबाई निर्दिष्ट करने का वर्णन करता है।

मेरा अनुमान है कि संकलक केवल लंबाई के लिए जांचता है, लंबाई के लिए नहीं, इसलिए यदि सरणी लंबाई स्पष्ट रूप से वर्णित करने के लिए सिंटैक्स भी था, तो गलत लंबाई की एक सरणी अभी भी कंपाइलर को पास करेगी (कोई त्रुटि नहीं फेंक दी जाएगी)।

यह करने के लिए सबसे अच्छा तरीका है पैरामीटर और वापसी प्रकार की मानव भाषा वर्णन में है:

/** 
* Duplicates a 4-length array into itself. 
* e.g. `[2, 3, 5, 8] => [2, 2, 3, 3, 5, 5, 8, 8]` 
* @param {Array<number>} arr the array to duplicate (exactly 4 entries) 
* @returns {Array<number>} the result (an array of length 8) 
*/ 
function dupe(arr) { 
    ... 
} 

FYI करें, आप @type घोषणा अंदर Array.<number>, या Array<number>, या यहाँ तक number[] उपयोग कर सकते हैं।

यदि यह सुविधा आपके लिए महत्वपूर्ण है (मैं निश्चित रूप से इसका उपयोग करूँगा!), तो आप submit an issue कर सकते हैं।

संबंधित मुद्दे