Коллбек функция не возвращает значение [дубликат]

253
05 января 2017, 08:03

На данный вопрос уже ответили:

  • Как вернуть значение из события или из функции обратного вызова? 2 ответа
    function load(data_field) {
      var response_object = {}; //объект в который нужно вернуть значение из коллбека
      chrome.storage.sync.get(data_field, function (result) {
          response_object = result; // сохраняем в объект результат 
      });
      return response_object; // доожен содержать объект, хотябы с одним полем
    }

Почему response_object не изменяется??????

Answer 1

Попробуйте вариант с коллбэком

function load(data_field, callback) {
  var response_object = {}; //объект в который нужно вернуть значение из коллбека
  chrome.storage.sync.get(data_field, function (result) {
      response_object = result; // сохраняем в объект результат
      callback(response_object);
  });
}
Answer 2

Может быть что-то с result?

Попробуй return result или даже

if(typeof result === 'object')
{
  response_object = result; // сохраняем в объект результат 
     return response_object; 
}
else
{
  alert('Error - typeof result = ' + typeof result + ' value = ' + result);
}

Если result по плану текст или номер то для присвоения объекту параметра нужно юзать Object.result = result; return Object

READ ALSO
Зачем использовать метод on() при назначении событий в джейквери?

Зачем использовать метод on() при назначении событий в джейквери?

Какие преимущества дает назначение событий через универсальный метод on() перед назначением событий, например, методами click(), hover(), keydown()?

370
Ошибка : illegal break statement

Ошибка : illegal break statement

Вот так должно работать

402
Сжатие фото на javascript

Сжатие фото на javascript

Как сжать фото и после отправить его на сервер?

313
Google extension parser [требует правки]

Google extension parser [требует правки]

Please help me!!! Can you write me what do rows, from 1 to end

273