如何在node-js中获得实时值?

时间:2017-12-14 08:46:48

标签: javascript node.js

我编写了代码,使用带窗口的串行通信设备从设备接收数据。

我可以在eclipse的Console窗口中看到数据,并将数据保存在txt文件中。

我希望看到实时值,并知道何时发送了哪个值

如何获得实时价值?让我知道如何编写代码。

以下是我的代码:

/**
 * Module dependencies.
 */

var express = require('express')
  , routes = require('./routes')
  , user = require('./routes/user')
  , http = require('http')
  , path = require('path');

var app = express();
var SerialPort = require('serialport');
var UrlParser = require('url');
var fs = require('fs');
var readline = require('readline');

// all environments
app.set('port', process.env.PORT || 3000);
app.set('views', __dirname + '/views');
app.set('view engine', 'ejs');
app.use(express.favicon());
app.use(express.logger('dev'));
app.use(express.bodyParser());
app.use(express.methodOverride());
app.use(app.router);
app.use(express.static(path.join(__dirname, 'public')));

// development only
if ('development' == app.get('env')) {
  app.use(express.errorHandler());
}

app.get('/', routes.index);
app.get('/users', user.list);

http.createServer(app).listen(app.get('port'), function(){
     console.log('Express server listening on port ' + app.get('port'));
    });                 

var port = new SerialPort("COM32" , { 
    baudRate:9600,
});

port.on("open" , function(){                
    console.log('open success');
});

port.on('data', function(data) {            
    converted_data = parseFloat(data);
    console.log(converted_data);    
    fs.appendFile('save.txt',converted_data + '\r\n',function(err) {
        if(err) 
            console.log(err);
        else
            console.log('data>txt');
    });
});

port.write("mon 1\n", function(){           
    console.log('write to device');
});

app.get('/data', function (req,res) {       
    res.redirect('http://localhost:3000/data.html');
});

1 个答案:

答案 0 :(得分:0)

要查看"真实"在节点js中的时间,您可以使用new Date()来获取它将返回的日期:

2017-12-14T09:00:34.359Z

因为它是一个Date对象,您可以在MDN找到所有方法。

或者,如果您想要使用时区等确切时间...,请使用Google Maps timezone API