возврат стоимости после обещания [дубликата]

На этот вопрос уже есть ответ:

установка переменной для получения возврата из функции обратного вызова с использованием обещания 2 ответа Как вернуть значение из функции асинхронного обратного вызова? [Дубликат] 3 ответа

У меня есть функция javascript, в которой я хочу вернуть значение, которое получаю после метода return. Легче увидеть, чем объяснить

function getValue(file){
    var val;
    lookupValue(file).then(function(res){
       val = res.val;
    }
    return val;
}

Какой самый лучший способ сделать это с обещанием. Насколько я понимаю,return val вернется до того, как lookupValue это сделает, но я не могуreturn res.val так как он возвращается только из внутренней функции.

Ответы на вопрос(2)

Ваш ответ на вопрос