2011-03-02 8 views
27

बनाएं मैं एक सरणी से अल्पविराम-सीमित स्ट्रिंग बनाने के लिए एक साफ तरीका ढूंढ रहा हूं। इस तरह मैं इसे अब कर रहा हूं ...अल्पविराम-सीमित स्ट्रिंग

for(i=0;i<10;i++) 
{ 
    str = str + ',' + arr[i]; 
} 
str=str.substring(1) 
return str; 

... लेकिन यह थोड़ा अस्पष्ट लगता है।

arr.join(','); 

https://developer.mozilla.org/en/JavaScript/Reference/Global_Objects/Array/join


var arr = ['Hi', 'I', 'am', 'a', 'comma', 'separated', 'list']; 

arr.join(','); // === "Hi,I,am,a,comma,separated,list" 
+2

तीन मिनट में छह महान उत्तर। यह जगह अद्भुत है। आप सभी को धन्यवाद। – Urbycoz

+1

बस एक तरफ नोट पर, 'str = str +' के बजाय आप 'str + = 'का उपयोग कर सकते हैं। – pimvdb

+0

http://www.w3schools.com/jsref/jsref_join.asp – Bogatyr

उत्तर

48

Array.prototype.join() आप जो खोज रहे हैंजहां सरणी आपकी सरणी चरणीय उदाहरण है।

+7

और यदि यह एक अल्पविराम है जिसे आप चाहते हैं, तो आपको इसे एक पैरामीटर देने की आवश्यकता नहीं है - '', '' डिफ़ॉल्ट विभाजक है, अनुभाग [Spec] के 15.4.4.5 (http://www.ecma-international.org/publications/standards/Ecma-262.htm)। हालांकि, स्पष्टता के लिए यह चोट नहीं पहुंचाता है। –

+0

@ टीजे .: अच्छा बिंदु। वैसे भी मुझे लगता है कि मैं उस पर भरोसा नहीं रखूंगा यदि मेरे लिए एक सरणी के साथ एक सरणी शामिल होना महत्वपूर्ण है (अधिक सटीक, मैं सभी कार्यान्वयन की हिम्मत नहीं करता)। – jAndy

+0

मैंने कभी भी एक कार्यान्वयन को पूरा नहीं किया है जिसने इसे गलत पाया है, लेकिन मेरे पास स्पष्ट होने के द्वारा प्रदान की गई स्पष्टता के खिलाफ * कुछ नहीं * है। (मैं स्पष्टता का एक बड़ा प्रशंसक हूं।) –

2

उपयोग विधि में शामिल होने:

arr.join(','); 
1

मैं वहाँ लगता हैकी तरह कुछ है

1

उपयोग में शामिल होने के समारोह:

myarray.join(',');

1

आप (',') का उपयोग करने

वर joinedstr = myarray.join है;

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