我的JavaScript代码无法读取JSON对象中的值。
My setup is: Sensors on a Raspberry pi -> python -> Websockets <- JS <- p5.js drawing.
我对JavaScript不是很精通,所以问题最可能出现在这里。 使用python,我生成了一个字典,看起来像这样。
a_dict = {'humidity' : 55.1, 'temperature' : 33.9, 'magneticfield' : 13.2}
然后我就
json.dumps(a_dict)
,并将其发送到服务器,使用
websockets
库。 在浏览器中,我做到了。
var ws = new WebSocket("ws://127.0.0.1:1234/")
ws.onmessage = function(event){
window.sensordata = JSON.parse(event.data);
在同一个文件中,我试图访问一个p5.js
的数据。
function setup(){ some code here }
function draw() {
ellipse(window.sensordata.humidity, 10,10,10)
这一行window.sensordata.humidity
触发了一个
未发现的类型错误。无法读取未定义的 "湿度 "属性
以下是我所尝试的。
改变绘图第一/websocket第二的顺序(反之亦然)。
console.log(window.sensordata)
打印出具有正确字段的正确对象,但console.log(window.sensordata.humidity)
却抛出了与上述相同的错误。
称其为window.sensordata['humidity']
也无济于事。
Edit: