我有一个以下格式的文本文件:
[[Line1TextA,[Lat,Long]], [Line1TextB,[Lat,Long]], ...]
[[Line2TextC,[Lat,Long]], [Line2TextD,[Lat,Long]], ...]
.
.
.
我正在解析一个文本文件(已完成),我想将数组格式的字符串转换为实际数组并将它们存储为要使用的变量。
我尝试使用 JSON.parse,如下所示:Convert string containing arrays to actual arrays但我无法让它工作(语法错误)。这是我的尝试:https://jsfiddle.net/5yz95ktg/
var myStr = '[[Line1TextA,[纬度,经度]], [Line1TextB,[纬度,经度]]]'
var myArr = JSON.parse(myStr);
var myArr = JSON.parse("["+ myStr + "]");
编辑:
function readFile(query) {
$.get('file.txt', function(data) {
var lines = data.split("\n");
for (var i = 0, len = lines.length; i < len; i++) {
if (lines[i].indexOf(query) > -1) { // Found a match
var myArr = JSON.parse(lines[i]); // #NOT WORKING
}
}
});
}
最佳答案
那么,您需要确保它们是字符串:
var myStr = '[[Line1TextA,[Lat,Long]], [Line1TextB,[Lat,Long]]]'
//-------------^
所以将其更改为:
var str = '[["Line1TextA",["Lat","Long"]],["Line1TextB",["Lat","Long"]]]'
还要确保在 JSON 中使用 "
,因为 '
无效。
关于javascript - 将数组形式的字符串转换为实际数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32925461/