Javascript 如何计算自最近一次阻塞(通过blockchain.info的api)以来经过的时间?

Javascript 如何计算自最近一次阻塞(通过blockchain.info的api)以来经过的时间?,javascript,bitcoin,blockchain,Javascript,Bitcoin,Blockchain,我已经设法使websocket连接正常工作,并且正在从ping_block和blocks_sub接收数据。但是,我很难计算当前日期和从blockchain.info的api接收的块日期之间的差异。有人能帮我计算最近一次阻塞后经过的时间吗 另外,如何保持连接打开,以便它更新innerHTML对象 如有任何建议,将不胜感激。谢谢 <script language="javascript" type="text/javascript"> var wsUri = "wss://ws.blo

我已经设法使websocket连接正常工作,并且正在从ping_block和blocks_sub接收数据。但是,我很难计算当前日期和从blockchain.info的api接收的块日期之间的差异。有人能帮我计算最近一次阻塞后经过的时间吗

另外,如何保持连接打开,以便它更新innerHTML对象

如有任何建议,将不胜感激。谢谢

<script language="javascript" type="text/javascript">

var wsUri = "wss://ws.blockchain.info/inv";
var output;

function init()
{
    output = document.getElementById("output");
    initWebSocket();
}

function initWebSocket()
{
    //  init blockchain websocket (activity, blocks)
    var blockchain = new WebSocket('wss://ws.blockchain.info/inv');

    blockchain.onerror = function (error){ console.log('connection.onerror',error); };

    blockchain.onopen = function () 
    {
        writeToScreen("Connection to blockchain.info succesful.");
        blockchain.send( JSON.stringify( {"op":"ping_block"} ) );
        blockchain.send( JSON.stringify( {"op":"blocks_sub"} ) );       //  subscribe to new blocks
    };

    blockchain.onmessage = function (message) 
    {
        var response = JSON.parse(message.data);

        var date = new Date(0);
        date.setUTCSeconds( response.x.time );

        if( response.op == "utx")
        {
            var amount = 0;

            for(var i=0;i<response.x.out.length;i++) 
                amount += response.x.out[i].value;

            //  amount is in satoshi
            //  1 BTC = 100,000,000 Satoshi 


([url='https://en.bitcoin.it/wiki/activity)']https://en.bitcoin.it/wiki/activity)[/url]
            response.amount = amount / 100000000;
            response.type = TYPE_TRANSACTION;
            response.index = index++;
            response.date = date;
        }
        else if( response.op == "block" )
        {
            response.type = TYPE_BLOCK;

            response.date = date;

        }

        if( DEBUG ) 
            console.log( response.op, response );

        response.date = date;

        writeToScreen('<span style="color: blue;">Most recent block found      
on: </span>' + response.date);

    };
}


function writeToScreen(message)
{
    var pre = document.createElement("p");
    pre.innerHTML = message;
    output.appendChild(pre);
}

//  constants
var TYPE_TRANSACTION = "transaction";
var TYPE_TRADE = "trade";
var TYPE_BLOCK = "block";
var MINUTE = 1000*60;
var HOUR = MINUTE*60;
var MIN_MINUTES = 1;
var MAX_MINUTES = 10;
var DEBUG = true;
var activity = [];
var index = 0;

 window.addEventListener("load", init, false);

您尚未提供任何必须使用的代码示例或示例数据。您可以输出从api接收的日期对象吗?您能将其解析为日期对象吗?添加了当前代码。不确定如何以正确的格式获取当前时间,以便与最近块的时间戳进行比较。