J'ai une boucle comme ci-dessous qui ne se exécute pas comme prévu.Redis dans Nodejs pour la boucle ne fonctionne pas correctement
var redis = require('redis');
var client = redis.createClient();
var arr = [{title:"title1"},{title:"title2"},{title:"title3"},{title:"title4"}];
for(var i =0; i<arr.length; i++){
//console.log(arr[i]);
var obj1 = arr[i];
client.get(obj1.title, function(err, response){
if(err){
console.log(err);
}
if(response){
if(i%3==0){
client.del(obj1.title);
}else{
client.incr(obj1.title);
}
}else{
client.set(obj1.title, 1);
}
});
}
La sortie sur l'exécution du code ci-dessous après était
for(var i=0; i<arr.length; i++){
client.get(arr[i].title, redis.print);
}
La sortie:
Reply: null
Reply: null
Reply: null
Reply: null
Reply: null
Reply: null
Reply: 2
qui n'a pas été ce que je pensais, puisque toutes les valeurs sauf celle divisible par 3 devrait être au moins 1;
Toute solution que vous avez en tête: P –