JavaScript-data.forEach不是一个函数

JavaScript-data.forEach不是一个函数,javascript,Javascript,我正在构建一些聊天应用程序,我被数据卡住了。forEach不是一个函数。代码如下: getMessages() }) socket.on('message',addMessages) function addMessages(message){ $("#messages").append(`<h4> ${message.name} </h4> <p> ${message.message}

我正在构建一些聊天应用程序,我被数据卡住了。forEach不是一个函数。代码如下:


    getMessages()
    })

    socket.on('message',addMessages)
    function addMessages(message){
        $("#messages").append(`<h4> ${message.name} </h4> <p> ${message.message} </p>`)
    }
    function getMessages() {
        $.get('http://localhost:3010/messages', (data) => {

            data.forEach(addMessages);
        })
    }

    function postMessage(message) {
        $.post('http://localhost:3010/messages', message )



    }

getMessages()
})
socket.on('message',addMessages)
函数addMessages(消息){
$(“#messages”).append(`${message.name}${message.message}

`) } 函数getMessages(){ $.get('http://localhost:3010/messages“,(数据)=>{ data.forEach(addMessages); }) } 函数postMessage(消息){ $.post($)http://localhost:3010/messages",留言) }
问题在于data.forEach(addMessages)

编辑:

更新:

现在,没有问题,只有一个,当页面加载时,它会自动发布未定义的消息, 图片:


您的
数据
不是要调用的有效类型对象
forEach
,请执行console.log并检查其值。在连接到MongoDB之前,我没有遇到过此问题,我不知道该怎么做,也不知道如何修复它。什么是
数据
?不要猜测,签入调试器。很可能它不是数组,因此它没有
forEach
方法。当你说,你在连接到mongo之前没有问题(我没有看到任何与mongodb相关的代码,只是一个http请求)检查你在mongodb中的查询结果是什么…“你能给我代码吗?”因此不存在用于此目的的查询。我们不能仅仅猜测您的数据类型并编写神奇的代码来修复所有问题。请合作。谁能“给你密码”?您所共享的只是一个http请求,该请求应该返回一个数组,但没有人知道服务器在处理该请求时实际在做什么