簡體   English   中英

從JavaScript對象中獲取數組

[英]Getting Array out of JavaScript Object

我嘗試通過Websocket從服務器獲取消息,到目前為止,該方法仍然有效。 我取回一個Javascript對象,並想過濾掉我需要將其放入我的應用程序狀態的數據。

這是即時通訊目前使用的代碼:

connection.onmessage = function (newMessage) {

        if(newMessage.data == '{"msg":"ping"}' ){
            connection.send('{"msg": "pong"}')
        }

        newMessage = JSON.parse(newMessage.data)
        console.log(newMessage.fields)       
    }

這是我得到的對象:

Javascript對象

我需要在args / 0的數組如何獲取它?

謝謝

您可以像“ newMessage.args”一樣訪問json對象中的“ args”數據

 var newMessage = {eventName: 'aname', args: ['data1','data2'] } document.getElementById('output').innerHTML = newMessage.args 
 <div id='output'></div> 

connection.onmessage函數中重寫newMessage可能不是一個好主意,並且在收到新消息時可能會添加更多日志。 你可以試試這個版本嗎?

connection.onmessage = function (newMessage) {
    console.log("Received new message :", newMessage.data);

    if(newMessage.data == '{"msg":"ping"}' ){
        connection.send('{"msg": "pong"}')
    }

    var parsedMessage = JSON.parse(newMessage.data);

    if (parsedMessage.msg === "changed") {
        console.log("Received changed message :", parsedMessage.fields.args); 
    }
}

希望這可以幫助!

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM