Как заставить метод node-redis выполняться с высшим приоритетом в NodeJS? - PullRequest
0 голосов
/ 21 мая 2018

Вот код:

var redis = require('redis');
var client = redis.createClient();
var addresses = new Array();

client.lrange('some_list', 0, -1, function(err, res) {
  console.log(res); #inner

  res.forEach(function(element) {
    if (result = element.match(/^(.+),(.*)$/)) {
      addresses.push(result[1]);
    }
  });
});

console.log(addresses); #outter

приводит к

[] #outter
['item1', 'item2', 'item3'] #inner

Оказывается, что сначала запускается внешний консольный журнал, а затем возвращается нулевой массив.Я хочу получить результат массива из метода node-redis lrange.

1 Ответ

0 голосов
/ 21 мая 2018

Если вы хотите увидеть, что держит addresses, вы можете попробовать что-то вроде этого:

const redis = require('redis');
const client = redis.createClient();
let addresses = new Array();
client.lrange('some_list', 0, -1, (err, res) => {
  console.log(res);
  res.forEach((element) => {
    if (result = element.match(/^(.+),(.*)$/)) {
      addresses.push(result[1]);
    }
  });
  console.log(addresses);
});
...