2011-03-02 77 views
27

我正在寻找一种整洁的方式来从数组中创建以逗号分隔的字符串。这是我如何做它现在...创建以逗号分隔的字符串

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

...但感觉有点凌乱。

+2

三分钟内六个很好的答案。这个地方很棒。谢谢你们。 – Urbycoz 2011-03-02 10:56:13

+1

只是在一个侧面说明,而不是'str = str +',你可以使用'str + ='。 – pimvdb 2011-03-02 11:17:13

+0

http://www.w3schools.com/jsref/jsref_join.asp – Bogatyr 2011-03-02 10:52:15

回答

48

Array.prototype.join()是你在找什么:

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" 
+7

如果是你想要的逗号,你根本不需要给它一个参数 - '',''是默认的分隔符,Section [规范]的15.4.4.5(http://www.ecma-international.org/publications/standards/Ecma-262.htm)。尽管如此,它并没有伤害到清晰度。 – 2011-03-02 10:57:35

+0

@ T.J .:好点。无论如何,我想我不会依赖,如果它对我有一个数组加入逗号(更确切地说,我不敢所有的实现)的重要。 – jAndy 2011-03-02 10:59:20

+0

我从来没有遇到过一个错误的实现,但是我没有*没有明确提供的清晰度。 (我是一个清晰的粉丝。) – 2011-03-02 11:24:45

2

使用join方法:

arr.join(','); 
1

我觉得是一样的东西array.join(',')其中数组是您的数组变量实例。

1

使用join函数:

myarray.join(',');

1

,你必须使用

VAR joinedstr = myarray.join( '');