我有以下字符串示例:
"label1, label2, label3, label4, label5"
现在,因为它将用作初始化jquery插件的对象,所以它需要如下所示:
'label1','label2','label3','label4','label5'
我已经设法用split(“,”)拆分字符串,把它变成一个数组,但是我不知道如何用单引号包装每个数组项,在哪个阶段,我将能够将它连接回字符串以供使用?
有什么想法吗?
解决方案可以是js only或jquery。
答案 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);