Я пытался использовать chrome.storage.sync.get для части моей программы, но у меня возникла загвоздка.
document.addEventListener('DOMContentLoaded', function() {
document.getElementById("save").addEventListener("click", save_options);
});
function save_options() {
var priceNotif = document.getElementById('pricealert').value;
chrome.storage.sync.set({
priceAlert: priceNotif
}, function() {
// Update status to let user know options were saved.
console.info("price set: " + priceNotif);
setTimeout(function() {
status.textContent = '';
}, 750);
});
}
var test = chrome.storage.sync.get('priceAlert', function(data) {
test = data.priceAlert;
});
console.info("test price get: " + test);
Тестовая переменная возвращает значение undefined, и как это исправить?
Возможный дубликат Как мне вернуть ответ от асинхронного вызова?



![Безумие обратных вызовов в javascript [JS]](https://i.imgur.com/WsjO6zJb.png)


Если вы создаете расширение Chrome, вы можете использовать. Подтвердите, что вам нужно добавить необходимое разрешение в файл manifest.JSON. пожалуйста, обратитесь к приведенному ниже документу.
Обратные вызовы в API расширений вызываются асинхронно, немедленного возврата значения нет, результат доступен только внутри обратного вызова, см. Как мне вернуть ответ от асинхронного вызова?