用Nodejs创建临时对象
Create temporary object in Nodejs
是否可以创建临时对象?
对象将在10秒内自动取消设置
也许我想用这样的东西
var foo = {};
foo[username] = 0;
setTimeout(function () { delete foo[username]; }, 10000);
如果在1000多个对象上使用,上面的代码对服务器不好吗?
或者谁有更好的主意?
您可以创建一个具有属性的对象,该属性将在指定的超时后自动将属性设置回undefined
。
function Foo(timeout) {
var temp;
var timer;
Object.defineProperty(this, 'temp', {
get: function () {
return temp;
},
set: function (value) {
temp = value;
timer = setTimeout(this.reset, timeout);
}
});
this.reset = function() { temp = undefined; };
}
然后使用它看起来像:
// Console:
> var foo = new Foo(10000); // specifies how long to timeout in ms
> foo.temp // undefined
> foo.temp = 5;
> foo.temp // 5
> // 10 seconds ellapse
> foo.temp // undefined
你也可以做一些事情,比如当一个值存在或一个现有的计时器正在运行时阻止任何更新。这完全取决于设计需要。
相关文章:
- JavaScript名称空间和对象创建
- 从不同的对象创建阵列
- Nodejs-从对象创建可读流
- Javascript对象创建实践
- 插件SDK中的动态或计算对象创建
- 为json对象创建一个动态表
- 对象.创建解释
- 从对象创建嵌套数组失败
- 从JSON对象创建具有超链接的HTML表
- 如何将文档对象创建为HTML页面
- 创建一个类,该类使用es6类语法将Function对象创建为实例
- KineticJS在对象创建(NOOB)后更改属性
- 通过AngularJS中的模态编辑对象-使用临时对象
- 对象创建中的JavaScript && notation
- Javascript对象创建-创建许多对象
- 从另一个JSON对象创建JSON对象
- 使用linq.js从多个对象创建JSON对象数组
- 如何使用Immutable.js从javascript原始对象创建记录映射
- 在fabric.js中初始化对象创建的子类
- 用Nodejs创建临时对象