Javascript 将单引号附加到字符

Javascript 将单引号附加到字符,javascript,Javascript,我有一根像 var test = "1,2,3,4"; 我需要将单引号(')添加到此字符串的所有字符,如下所示: var NewString = " '1','2','3','4' "; var test = "1,2,3,4"; var testOut = ""; for(var i; i<test.length; i++){ testOut += "'" + test[i] + "'"; } 请给我任何建议。首先,我会将字符串拆分为一个数组,这样可以更容易地操作为您想要的任

我有一根像

var test = "1,2,3,4";
我需要将单引号(
'
)添加到此字符串的所有字符,如下所示:

var NewString = " '1','2','3','4' ";
var test = "1,2,3,4";
var testOut = "";
for(var i; i<test.length; i++){
   testOut += "'" + test[i] + "'";
}

请给我任何建议。

首先,我会将字符串拆分为一个数组,这样可以更容易地操作为您想要的任何形式。然后,你可以用任何你想要的胶水把它粘在一起(在本例中,)。剩下要做的唯一一件事是确保它正确开始和结束(在本例中是使用

(请打开JavaScript/developer控制台查看输出)

对于多个数字:

var newString = test.replace(/(\d+)/g, "'$1'");

参考资料:

使用正则表达式:

var NewString = test.replace(/(\d+)/g, "'$1'");

一个简短而具体的解决方案:

"1,2,3,4".replace(/(\d+)/g, "'$1'")
一个更完整的解决方案,它引用任何元素并处理分隔符周围的空间:

"1,2,3,4".split(/\s*,\s*/).map(function (x) { return "'" + x + "'"; }).join(",")

字符串实际上类似于数组,因此可以执行以下操作:

var NewString = " '1','2','3','4' ";
var test = "1,2,3,4";
var testOut = "";
for(var i; i<test.length; i++){
   testOut += "'" + test[i] + "'";
}
var test=“1,2,3,4”;
var testOut=“”;
对于(var i;i更简单

test = test.replace(/\b/g, "'");

你似乎已经回答了你自己的问题:
test=“'1'、'2'、'3'、'4'”
+1伟大的答案:另外,它不应该是0美元吗?(只有一组)@Billy,是的,是设计的(因为在发布的问题中只有一个数字)。然而,正如Royi所建议的,这很容易修改。@DavidThomas为什么是$1而不是$0?我认为这是一个很好的答案。我可能会自己编写这样的代码。我的答案是,我只使用字符串操作,因为它不太容易出错(当正则表达式变得更复杂时),效率更高(仅与更大的数据集相关)而且更容易适应其他环境。我个人喜欢正则表达式,但有一句名言…“如果你有问题,你试图用正则表达式解决它,现在你有两个问题”~)@Royi,我可能错了,但我很确定它是
$1
。至于为什么,我真的不知道。我现在甚至无法确认,因为我不在电脑旁,在其他十几件事情中使用手机。不过,今晚我会查一查,等我有空的时候……如果只是出于好奇=)