将逗号分隔的字符串转换为JavaScript数组

时间:2012-08-09 12:13:14

标签: javascript string-parsing

我有这个字符串:

"'California',51.2154,-95.2135464,'data'" 

我想将它转换为像这样的JavaScript数组:

var data = ['California',51.2154,-95.2135464,'data'];

我该怎么做?

我没有jQuery。我不想使用jQuery。

3 个答案:

答案 0 :(得分:2)

尝试:

var initialString = "'California',51.2154,-95.2135464,'data'";
var dataArray = initialString .split(",");

答案 1 :(得分:1)

使用可用于字符串的拆分功能。

var ar = "'California',51.2154,-95.2135464,'data'".split(",");

并将数字转换为实际数字,而不是字符串。

for (var i = ar.length;i--; ) {
   var tmp = parseFloat(ar[i]);
   ar[i] = (!isNaN(tmp)) ? tmp: ar[i].replace(/['"]/g,"");
}

请注意,如果您的字符串包含数组/对象,则会失败。

答案 2 :(得分:0)

由于您的格式几乎符合JSON语法,因此您可以执行以下操作:

var dataArray = JSON.parse ('[' + initialString.replace (/'/g, '"') + ']');

即添加'['和']'字符作为开头和结尾,并用'''替换所有“''字符。而不是执行JSON解析。