我正在使用websockets将数据从服务器发送到客户端。这样可以正常工作,例如我可以显示服务器在收到客户端时发送的消息。这是我使用的部分JavaScript:
ws.onmessage = function(evt){
$("#display").append(evt.data + "<br />");
console.log(evt.data);
这是显示的数据:
{"place": {"full_name": "Northampton, Northamptonshire"}, "coordinates": {"type": "Point", "coordinates": [-0.9003352, 52.2467064]}}
但是,如果我只是想要坐标信息i,e,经度和纬度,那么Web控制台错误消息是:
TypeError: evt.data.coordinates is undefined @ http://localhost:8888/:34
我正试图通过以下方式获取此数据:
ws.onmessage = function(evt){
var coordinates = evt.data.coordinates.coordinates;
console.log(coordinates);
我是javascript的新手。
由于
答案 0 :(得分:1)
evt.data
是一个JSON字符串。你必须解析它:
ws.onmessage = function(evt){
var msg = JSON.parse(evt.data);
var coordinates = msg.coordinates.coordinates;