如何将变量从回调函数传递给函数调用?
how to pass variable from callback function to function call?
这里我使用简单的方式将传感器数据发送到数据库 javascript (johnny five)
使用此代码
var five = require("johnny-five");
var pg = require("pg");
var conString = "pg://admin:raja@localhost:5432/data";
var client = new pg.Client(conString);
function call(n)
{
client.connect();
client.query("INSERT INTO sensordata (event) VALUES (n);");
}
var board = new five.Board();
board.on("ready", function() {
var sensor = new five.Sensor.Digital(2);
sensor.on("change", function() {
var n = this.value;
call(n);
});
});
我的问题是我能否将传感器回调函数中的流数据变量 n 传递给调用方法。
我认为,您在这里看到的是一个简单的查询模板,所有 sql 客户都支持:
client.query("INSERT INTO sensordata (event) VALUES ();", n);
这样您就可以将 n
变量的值传递给您的 SQL 查询。
更新: 而且您不必在每次调用 client.query
之前调用 client.connect()
。您应该只调用一次来建立数据库连接,之后 pg.Client
将使用它发送所有后续请求。
这里我使用简单的方式将传感器数据发送到数据库 javascript (johnny five) 使用此代码
var five = require("johnny-five");
var pg = require("pg");
var conString = "pg://admin:raja@localhost:5432/data";
var client = new pg.Client(conString);
function call(n)
{
client.connect();
client.query("INSERT INTO sensordata (event) VALUES (n);");
}
var board = new five.Board();
board.on("ready", function() {
var sensor = new five.Sensor.Digital(2);
sensor.on("change", function() {
var n = this.value;
call(n);
});
});
我的问题是我能否将传感器回调函数中的流数据变量 n 传递给调用方法。
我认为,您在这里看到的是一个简单的查询模板,所有 sql 客户都支持:
client.query("INSERT INTO sensordata (event) VALUES ();", n);
这样您就可以将 n
变量的值传递给您的 SQL 查询。
更新: 而且您不必在每次调用 client.query
之前调用 client.connect()
。您应该只调用一次来建立数据库连接,之后 pg.Client
将使用它发送所有后续请求。