2012-02-20 8 views
10

के साथ नेस्टेड सरणी और ऑब्जेक्ट डेटा को दस्तावेज़ करने के बारे में प्रश्न jsdoc का उपयोग करके नेस्टेड सरणी और ऑब्जेक्ट्स को मैं कैसे प्रारूपित करूं?जेएसडोक

यह मेरा सबसे अच्छा अनुमान है:

an_obj = { 
     username1 : [ 
      { 
       param1 : "value 1-1-1", 
       param2 : "value 1-1-2", 
       optional_nested : "1-1--2" 
      }, 
      { 
       param1 : "value 1-2-1", 
       param2 : "value 1-2-2" 
      }, 
     ], 
     username2 : [ 
      { 
       param1 : "value 2-1-1", 
       param2 : "value 2-1-2" 
      }, 
      { 
       param1 : "value 2-2-1", 
       param2 : "value 2-2-2", 
       optional_nested : "2-2--2"    

      } 
     ] 
    } 
} 


/** 
* A function description. 
* @param {Object} obj 
* @param {Object} obj.username This is not the object name, but a name type. 
* @param {Array} obj.username.array Desc... using [] would conflict with optional params. 
*         However this could be confused with an object called array. 
* @param {String} obj.username.array.param1 Desc... This is the object name rather than a type. 
* @param {String} obj.username.array.param2 Desc... 
* @param {String} obj.username.array.[optional_param] Desc... 
*/ 
var myFunc = function(obj){ 
    //... 
}; 
myFunc(an_obj); 

मैं कैसे संकेत मिलता है कि एक वस्तु स्ट्रिंग का एक प्रकार द्वारा अनुक्रमित करते हैं?

मैं नेस्टेड सरणी को कैसे परिभाषित करूं?

यह भी सुनिश्चित नहीं है कि वैकल्पिक पैरामीटर में स्क्वायर ब्रैकेट कहां रखा जाए।

उत्तर

1

मैं this बाहर की जांच करने की सिफारिश करता हूं।

//{Object{username:<Array<Object{param1:String, param2:String,[optional_nest]:string}>>}} 
+0

लिंक मर चुका है और उपरोक्त उदाहरण jsdoc 3.3 –

0

आप इस तरह यह कर कोशिश कर सकते हैं: मैं शायद यह कुछ इस तरह लिखना चाहते हैं (जैसा कि यहाँ http://code.google.com/p/jsdoc-toolkit/wiki/TagParam निर्दिष्ट)

/** 
* @param {String[]} obj.username.array 
*/ 

इस तार की एक सरणी के रूप में obj.username.array घोषित करने के लिए माना जाता है। क्या आप jsdoc या jsdoc3 का उपयोग कर रहे हैं?

+0

के साथ "अमान्य प्रकार अभिव्यक्ति" फेंकता है मैं वर्तमान में jsdoc-toolkit v3 का उपयोग कर रहा हूं। मैं यह नहीं समझ सकता कि इस तरह से कुछ कैसे निपटें {id: 'moo', आइटम: [{url: '...', विवरण: 'moo2'}, ...]} – walialu

+0

इससे मदद नहीं मिलती , मामला अज्ञात वस्तुओं के सरणी दस्तावेज कर रहा है, वास्तविक वस्तुओं के सरणी नहीं –