将Python数组传递给javascript?

我是HTML / javascript的新手。 我正在运行一个本地服务器,带有一个html / javascript文件和一个单独的python脚本。

问题: 如何将python数组传递给javascript变量?

到目前为止工作:我已将数组写入文件data.txt

 1 32.1 2 10.0 

但如果它更容易,我可以把它放在JSON格式。

到目前为止,这是我的进展

 var x_pos = []; jQuery.get('http://127.0.0.1:8000/data/data.txt',function(data){ // ??? Code here ??? }); console.log(x_pos[0]) 

注意:如果有一个更简单的方法来做到这一点,我愿意接受建议。 谢谢。

 var x_array = []; var y_array = []; jQuery.get('http://localhost/test/data.txt',function(data){ var lines = data.split(/\r\n|\n/g); for (var i = 0; i < lines.length; i++) { line = lines[i].split(/\s+/g); x_array.push(line[0]); y_array.push(line[1]); } console.log(x_array); console.log(y_array); }); 

请改用JSON。 然后你可以解析它

 jQuery.get('http://localhost/data.txt', function(data) { var xy = JSON.parse(data); }); 

并用作

 alert(xy['1']); // or xy.propertyname if it is not-numeric 

你的数据结构就像

 { "1": 32.1, "2": 0 } 

只需为此创建一个json结构,然后执行JSON.parse(data)

这是你的结构:

{x: [1,2,3,4], y:[32.1,10.0,76.3]}

其中一个解决方案是使用拆分。 它分裂了字符串。

  var newData = []; data = data.split('\n'); data.forEach(function(entry){ entry = entry.split(' '); newData.push({ x : entry[0], y : entry[1] }); }); console.log(newData); 

您需要使用正则表达式来解析文本文件。 您不能只在不是json格式的字符串上使用JSON.parse()

http://plnkr.co/edit/39aBGgwvNI7Lem6eiefu?p=preview

 $.get("http://localhost/data.txt", parse); function parse(str) { var lineBreak = /\r\n/g; var space = /\s/g; var tmp = str.split(lineBreak).map(function(l) { var split = l.split(space); return { key: split[0], val: split[1] }; }); var data = JSON.stringify(tmp, null, 2); $("#data").text(data); }