Kozack
@Kozack
Thinking about a11y

Как реализовать нечто подобное?

Нужна вот такая функция:
  1. Проверить существует ли значение в массиве
  2. Если существует - вернуть
  3. Если не существует - загрузить и вернуть


Пример:
user = User(5);

function User(id) {
  if (window.users[id]) return window.users[id];
  else {
    jQuery.getJSON('https://users.data/', function(user) {
      window.users[id] = user;
    });
    return window.users[id];
  }
}
  • Вопрос задан
  • 250 просмотров
Решения вопроса 2
Denormalization
@Denormalization
Нужно почитать про промисы, иначе не получится.
Ответ написан
Petroveg
@Petroveg
Миром правят маленькие с#@&ки
Комментировать
Пригласить эксперта
Ответы на вопрос 1
mlnkv
@mlnkv
JavaScript Developer
var users = {};

function getUser(id, cb) {
  if (users[id]) cb(users[id]);
  else {
    $.getJSON('https://users.data/', function(user) {
      users[id] = user;
      cb(users[id]);
    });
  }
}

getUser(5, function(user) {
  /* тут работаем с user */
});
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы