Python中的以下代码:
jsVar = (json.dumps(jsPass))
生成此输出:
{
"TT1004": [
[1004, 45.296109039999997, -75.926546579999993,
66.996664760000002, 150, false
]
],
"TT1001": [
[1001, 45.296471220000001, -75.923881289999997, 64.616423409999996, 150, false]
],
"TT1003": [
[1003, 45.296109379999997, -75.926543379999998,
67.240025419999995, 150, false
]
],
"TT1002": [
[1002, 45.29626098, -75.924908610000003, 65.300880480000004, 150, true]
]
}
输出通过了JSON Formatter&的验证。验证者网站。
在JavaScript代码中,我设置了以下内容:
var myVar2 = {};
var myVar2 = jsVar;
当我查看JavaScript变量console.log
的{{1}}或.dir
方法的输出时,没有数据。它返回myVar2
以及空Object { }
。
为了测试生成的Python数据是否正确JS,我已手动将数据放入JavaScript变量中,该变量记录以下内容:
__proto__:Object
我需要学习的是如何将Python JSON jsVar变量导入JavaScript代码。
答案 0 :(得分:0)
从您的原始帖子:
Python:
jsVar = (json.dumps(jsPass))
JavaScript代码:
var myVar2 = jsVar;
问:如何从Javascript代码访问Python JSON变量?
答强>
Python和Javascript是两种不同的语言,您可以以不同的方式运行它们,例如运行通常使用python
二进制文件的Python代码并执行Javascript,您将使用像Google V8
这样的JS引擎。
请注意:当您运行python和javascript代码时,这基本上由2个不同的进程处理。也就是说,它们将具有不同的内存空间,因此除非我们讨论的是Unix shared memory
,否则您的Javascript进程无法访问Python代码的内存空间。 (我不打扰这个)
因此,如果您正在考虑直接从1种语言访问变量,甚至可以处理到另一个流程,那么它可能不。
但是,请记住,变量只是对您内容的引用。我想说的是 - 你不需要移植变量,而是需要内容。
新手最简单的方法是将内容序列化(外行术语:保存)到File
,然后让Javascript进程读出内容并将其解析回对象。
我希望这些指南对您有用;
Python方面:
使用Python将JSON数据写入文件 - 您可以参考此SO帖子以获得解决方案
How do I write JSON data to a file in Python?
Javascript方面:
要从文件中读取JSON数据,您可以通过NodeJS轻松完成此操作
Using Node.JS, how do I read a JSON object into (server) memory?