我想在加载后立即向网络工作者发出一些信息。代码看起来像:
var w = new Worker("worker.js");
w.onmessage = function (ev) {
console.log(ev.data);
};
w.postMessage("Hello World");
在worker.js中,我有:
this.onmessage = function (ev) {
self.postMessage(ev.data);
}
所以,事件流是这样的:
窗口--Hello World-> web worker - Hell
变量范围的规则是否与node.js中的常规“线性”javascript相同?
我正在使用来自某些请求的数据进行几次db调用,以下内容将在app.get或app.post函数调用中进行:
var data = req.body.data;
----> db SELECT * FROM some table WHERE some value = data;
-----> db callback declares var resultdata = result.data
----> db SEL
在解释我的问题之前,这是我的架构:
1 - server is running, getting request and storing data
2 - a service - called process_runner.js - is running on a 2nd terminal
该服务的目的是从我的数据库中获取数据以执行某些函数。
这就是服务:process_runner.js
// all needed requires
/// ...
//
mongoose.connect(config.database);
var db = mongoose.connection;
JavaScript是一种单线程编程语言(可同时执行一项任务)
因此,它首先运行主线程(同步),然后在事件循环中执行异步任务(这是我所理解的,但显然我错了)
Node.js使用libuv,一个处理异步任务的库。
// synchronously open file descriptor
var fd = fs.openSync('testFile', 'r+');
// synchronously write data to the file
fs.writeSync(fd, ' first data part ');
// asynch
在我的应用程序中,我有一个submitSuccesscallback函数,当提交成功时,这个函数将从我自己的JS库中触发。在submitSuccesscallback中,我首先显示一个加载程序并执行一些初始化操作。
function submitSuccesscallback(){
showLoadingIndicator(); // has code a display loader
doSubmitSuccessOperations();// has code to do some app specific operations
}
在这里,doSubmitSuccessOpera
我正在学习Node.js和一些javascript。我读了一些关于排队和执行堆栈之类的想法。
我试图计算一个websocket请求所花费的时间来完成。一个非常典型的发射形式是:
microtime1 = getTimeNow;
socket.emit("message","data", function (error, data) {
// calculate time taken by using microtime module by getting updated time and calculating difference.