我有一个JavaScript中的一维字符串数组,我想把它转换成一个逗号分隔的列表。在普通JavaScript(或jQuery)中是否有一种简单的方法将其转换为逗号分隔的列表?(我知道如何通过数组迭代,并通过连接自己构建字符串,如果这是唯一的方法。)
当前回答
var arr = ["Pro1", "Pro2", "Pro3"];
console.log(arr.join());// Pro1,Pro2,Pro3
console.log(arr.join(', '));// Pro1, Pro2, Pro3
其他回答
如果你需要用“and”代替“”,在最后两项之间,你可以这样做:
function arrayToList(array){
return array
.join(", ")
.replace(/, ((?:.(?!, ))+)$/, ' and $1');
}
取初始代码:
var arr = new Array(3);
arr[0] = "Zero";
arr[1] = "One";
arr[2] = "Two";
使用连接函数的初始答案是理想的。需要考虑的一件事是字符串的最终用途。
用于某些最终文本显示:
arr.join(",")
=> "Zero,One,Two"
用于在URL中以(有点)RESTful方式传递多个值:
arr.join("|")
=> "Zero|One|Two"
var url = 'http://www.yoursitehere.com/do/something/to/' + arr.join("|");
=> "http://www.yoursitehere.com/do/something/to/Zero|One|Two"
当然,这完全取决于最终的用途。只要记住数据源和使用方法,一切都将是正确的。
Array.prototype.join()方法:
var arr = [" 0 ", " 1 ", " 2 "]; document . write(加勒比海盗。加入(","));
Papa Parse处理值中的逗号和其他边缘情况。
(Baby Parse for Node已弃用-你现在可以在浏览器和Node中使用Papa Parse。)
如。(节点)
const csvParser = require('papaparse'); // previously you might have used babyparse
var arr = [1,null,"a,b"] ;
var csv = csvParser.unparse([arr]) ;
console.log(csv) ;
1,,“a,b”
你想以"and"结尾吗?
对于这种情况,我创建了一个npm模块。
试试arrford:
使用
const arrford = require('arrford');
arrford(['run', 'climb', 'jump!']);
//=> 'run, climb, and jump!'
arrford(['run', 'climb', 'jump!'], false);
//=> 'run, climb and jump!'
arrford(['run', 'climb!']);
//=> 'run and climb!'
arrford(['run!']);
//=> 'run!'
安装
npm install --save arrford
阅读更多
https://github.com/dawsonbotsford/arrford
自己试试吧
主音链接