我正在尝试在hget块内的node.js中执行hdel命令。这是代码:
client.hget(requests[i], "client", function(err, client){
if(isUser == true){
client.hdel(requests[i], function(err){
if(err){
console.log("cannot process request");
}
});
}
});
它无法正常工作,我无法理解为什么!任何帮助将不胜感激。
答案 0 :(得分:0)
由于您使用requests [i]作为参数,我们可以假设这个代码块被封装在一个循环中:也许您正在尝试迭代一个数组并为每个项目执行hget / hdel。
在这种情况下,您很可能遇到Javascript的范围规则:requests [i]是闭包的一部分,但闭包只能在函数级别定义(而不是在块级别)
您可能需要定义内部函数,或使用forEach迭代容器。更多信息: