[英]Convert comma separated string to a JavaScript array
I have this string:我有这个字符串:
"'California',51.2154,-95.2135464,'data'"
I want to convert it into a JavaScript array like this:我想把它转换成这样的 JavaScript 数组:
var data = ['California',51.2154,-95.2135464,'data'];
How do I do this?我该怎么做呢?
I don't have jQuery.我没有 jQuery。 And I don't want to use jQuery.
而且我不想使用 jQuery。
Try:尝试:
var initialString = "'California',51.2154,-95.2135464,'data'";
var dataArray = initialString .split(",");
Use the split function which is available for strings and convert the numbers to actual numbers, not strings.使用可用于字符串的 split 函数并将数字转换为实际数字,而不是字符串。
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, ""); } console.log(ar)
Beware, this will fail if your string contains arrays/objects.请注意,如果您的字符串包含数组/对象,这将失败。
Since you format almost conforms to JSON syntax you could do the following :由于您的格式几乎符合 JSON 语法,您可以执行以下操作:
var dataArray = JSON.parse ('[' + initialString.replace (/'/g, '"') + ']');
That is add '[' and ']' characters to be beginning and end and replace all "'' characters with '"'.即添加 '[' 和 ']' 字符作为开头和结尾,并用 '"' 替换所有 "'' 字符。 than perform a JSON parse.
而不是执行 JSON 解析。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.