如何用单引号括起逗号分隔值字符串?

时间:2016-01-14 13:23:22

标签: javascript jquery string join

我有以下字符串示例:

"label1, label2, label3, label4, label5"

现在,因为它将用作初始化jquery插件的对象,所以它需要如下所示:

'label1','label2','label3','label4','label5'

我已经设法用split(“,”)拆分字符串,把它变成一个数组,但是我不知道如何用单引号包装每个数组项,在哪个阶段,我将能够将它连接回字符串以供使用?

有什么想法吗?

解决方案可以是js only或jquery。

4 个答案:

答案 0 :(得分:8)

你可以像下面这样做。希望它有所帮助。

var input = "label1, label2, label3, label4, label5";
var result = '\'' + input.split(',').join('\',\'') + '\'';

答案 1 :(得分:3)

"label1, label2, label3, label4, label5".split(',').map(function(word){
    return "'" + word.trim() + "'";
}).join(',');

(ES6编辑)

"label1, label2, label3, label4, label5".split(',')
   .map(word => `'${word.trim()}'`)
   .join(',');

答案 2 :(得分:1)

也许是这样的事:

var str = "label1, label2, label3, label4, label5";
var arr = str.split(",");

for (var i in arr) {
    if (arr.hasOwnProperty(i)) {
        arr[i] = "'"+arr[i]+"'";
    }
}

答案 3 :(得分:0)

用逗号和空格分割字符串以生成数组,并使用join方法获取由分隔符分隔的数组元素。 即:分隔符为','并添加开始和结束引用,因为它在连接元素后缺失。

var str = "label1, label2, label3, label4, label5";
var res = str.split(", ");
var data = "'" + res.join("','") + "'";
console.log(data);