2009-02-10 17 views
7

मैं एक सरणी का उपयोग करना चाहता हूं जिसे मैं कई बार अपने कोड के शीर्ष पर घोषित करता हूं। पूर्व।क्या आप वीबीस्क्रिप्ट में निरंतर सरणी घोषित कर सकते हैं?

कॉन्स्ट क्वार्टरों = [ "Q1", "Q2", "Q3" "Q4"]

प्रत्येक क्वार्टर क्ष q.Do कुछ काम के लिए

आदि

कर सकते हैं इस वीबीस्क्रिप्ट में किया जाना चाहिए?

+2

आप एक प्रश्न को चिह्नित करने से पहले थोड़ा (> 5 मिनट) समय इंतजार करना चाहेंगे जैसा कि अधिक लोगों को सुझाव देने के लिए उत्तर दिया गया है ... ;-) – Dscoduc

+2

क्यों? प्रश्न का उत्तर दिया गया था (मैं इसे हमेशा इस तरह से चिह्नित नहीं कर सकता)। – user45492

उत्तर

10

एक सरणी VBScript में फ़ंक्शन कॉल (Array()) का परिणाम है। केवल शाब्दिक मूल्य Const बनाया जा सकता है। तो: नहीं, आप नहीं कर सकते।

2

सरल उत्तर: नहीं। सरणी const नहीं बनाई जा सकती है।

6

क्यों सरणी को सार्वजनिक के रूप में घोषित नहीं करें और फिर स्क्रिप्ट की शुरुआत के दौरान सरणी असाइन करें?

Public myArray(3) 
arrQuarters = Array("Q1", "Q2", "Q3", "Q4") 

For Each Quarter in arrQuarters 
    wscript.echo Quarter 
Next 
3

आप उस सरणी को वापस करने के लिए एक फ़ंक्शन को परिभाषित कर सकते हैं जिसे आप निरंतर उपयोग करना चाहते हैं। उदाहरण के लिए:

For Each q in AllQuarters 
    wscript.echo q 
Next 

wscript.echo "element 0 = " & AllQuarters()(0) 

AllQuarters()(0) = "X1" 

wscript.echo "element 0 still = " & AllQuarters()(0) 


Function AllQuarters() 
    AllQuarters = Array("Q1","Q2","Q3","Q4") 
End Function 
+0

यहां अच्छा जवाब है। यद्यपि आप निरंतर सरणी घोषित नहीं कर सकते हैं, एक वर्कअराउंड है: इसे एक फ़ंक्शन के रूप में परिभाषित करें। – Stephan

1

एक छोटा और त्रुटि-रहित होता समाधान होगा:

Dim arr 
arr = Split("Q1 Q2 Q3 Q4") : ubd = UBound(arr) 
' Implied separator is " " aka 040 octal aka 32 Dec aka 020 Hex. 

अपने डेटा रिक्तियाँ सकता है:

arr = Split("Le Sage,ne pleure,ni les vivants, ni les morts", ",") 
ubd = UBound(arr) 
' arr(2), for instance, now contains "ni les vivants" 

सावधानी: कभी नहीं एक विभाजक है कि हो सकता है चुनें आपके 'परमाणु' डेटा स्ट्रिंग में होता है, या फ़ंक्शन उस विभाजक पर डेटा के एक टुकड़े के बीच में विभाजित होगा।

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