nodejs中不想jsp有application对象,也没有<%!%>这样的全局初始化语句。怎么实现流量统计功能呢。如果将计数器初始化的语句放在网页中(var count=0)那么每次用户请求页面是又会赋值为0,怎么样才能持续计数呢?
6 回复
我写了这个 #count.js var fc=function(){ var count=0; function f(){ count++ ; return count; } return f; } module.exports=fc;
然后
#app.js
exports.count= function(req, res){
var fc=require('count');
var counter=fc(); console.log(process.pid) ; res.end(counter().toString());
}
但是还是每次输出都是1,刷新也不会增加。
@sunuxreg 是形成闭包了,但是它们不是同一个闭包。 你应该这样写:
var count = 0;
function fc () {
count++;
return count;
}
然后每次调用 fn() 就会返回+1之后的值了