Websocket 如何在Javascript onclose函数中访问onclose事件代码?

Websocket 如何在Javascript onclose函数中访问onclose事件代码?,websocket,Websocket,我有一个简单的WebSocket问题 <!DOCTYPE html> <meta charset="utf-8" /> <title>WebSocket Test</title> <script language="javascript" type="text/javascript"> var wsUri = "ws://echo.websocket.org/"; var output; function in

我有一个简单的WebSocket问题

<!DOCTYPE html>
<meta charset="utf-8" />
<title>WebSocket Test</title>
<script language="javascript" type="text/javascript">
    var wsUri = "ws://echo.websocket.org/";
    var output;

    function init() {
        output = document.getElementById("output");
        testWebSocket();
    }
    function testWebSocket() {
        websocket = new WebSocket(wsUri);
        websocket.onopen = function (evt) {
            onOpen(evt)
        };
        websocket.onclose = function (evt) {
            onClose(evt)
        };
        websocket.onmessage = function (evt) {
            onMessage(evt)
        };
        websocket.onerror = function (evt) {
            onError(evt)
        };
    }
    function onOpen(evt) {
        writeToScreen("CONNECTED");
        doSend("WebSocket rocks");
    }
    function onClose(evt) {
        writeToScreen("DISCONNECTED");
    }
    function onMessage(evt) {
        writeToScreen('<span style="color: blue;">RESPONSE: ' + evt.data + '</span>');
        websocket.close();
    }
    function onError(evt) {
        writeToScreen('<span style="color: red;">ERROR:</span> ' + evt.data);
    }
    function doSend(message) {
        writeToScreen("SENT: " + message);
        websocket.send(message);
    }
    function writeToScreen(message) {
        var pre = document.createElement("p");
        pre.style.wordWrap = "break-word";
        pre.innerHTML = message;
        output.appendChild(pre);
    }
    window.addEventListener("load", init, false);
</script>
 <h2>WebSocket Test</h2> 
<div id="output"></div>

</html>
现在这是我的onclose函数

function onClose(evt) { writeToScreen("DISCONNECTED"); }
我已经发布了一个警报作为警报(evt),但我没有得到任何接近的代码

请任何人帮忙试试这个:

function onClose(event)
{
    alert('Onclose called' + event);
    alert('code is' + event.code);
    alert('reason is ' + event.reason);
    alert('wasClean  is' + event.wasClean);
}

第一个警报只会产生一个无用的
[object object]
警报('Onclose调用'+JSON.stringify(event))No,应该是
JSON.stringify(event,Object.getOwnPropertyNames(event))
function onClose(event)
{
    alert('Onclose called' + event);
    alert('code is' + event.code);
    alert('reason is ' + event.reason);
    alert('wasClean  is' + event.wasClean);
}