我有这个字符串:
"'California',51.2154,-95.2135464,'data'"
我想将它转换成这样的 JavaScript 数组:
var data = ['California',51.2154,-95.2135464,'data'];
我该怎么做呢?
我没有 jQuery。而且我不想使用 jQuery。
我有这个字符串:
"'California',51.2154,-95.2135464,'data'"
我想将它转换成这样的 JavaScript 数组:
var data = ['California',51.2154,-95.2135464,'data'];
我该怎么做呢?
我没有 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.
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.
由于您的格式几乎符合 JSON 语法,您可以执行以下操作:
var dataArray = JSON.parse ('[' + initialString.replace (/'/g, '"') + ']');
即添加 '[' 和 ']' 字符作为开头和结尾,并用 '"' 替换所有 "'' 字符。而不是执行 JSON 解析。