Как вытащить переменную из функции

Существует функция

async function getRegistryValues() {
     const RegistryValues = await Registry.get('HKCU\\Software\\XLauncher Client')
     console.log(RegistryValues.$values)
}

Которая выдает в консоль список значений из реестра в виде:

 { '(�� 㬮�砭��)': '', clubid: 'clubid', pcnum: 1 }

введите сюда описание изображения

Обращать на странные значения внимания не нужно, мне интересны последние 2 значения.

Мне требуется вытащить значение RegistryValues.$values.clubid и RegistryValues.$values.pcnum

Но вытащить переменную из функции просто так нельзя, и при изменении кода до:

async function getRegistryValues() {
    const RegistryValues = await Registry.get('HKCU\\Software\\XLauncher Client')
}
console.log(RegistryValues.$values)

Появляется ошибка

ReferenceError: RegistryValues is not defined

Что логично, ведь функция изолирует это значение, но где то далеко в душе я понимаю что нужное мне действие можно выполнить по другому))) просто я не знаю как. Буду благодарен за любую помощь


Ответы (1 шт):

Автор решения: Абдулазиз

return Решает вашу проблему)

async function getRegistryValues() {
    const RegistryValues = await Registry.get('HKCU\\Software\\XLauncher Client')
    return { 
      clubid: RegistryValues.clubid,
      pcnum: RegistryValues.pcnum
    }
}

getRegistryValues().then(data=>{
  console.log(data)
})

Чтобы тестировать я использовал ответ от

списка значений из реестра

{ '(�� 㬮�砭��)': '', clubid: 'clubid', pcnum: 1 }

function getRegistryValues() {
    const RegistryValues = {
      '(�� 㬮�砭��)': '',
      clubid: 'clubid',
      pcnum: 1
    }
    return { 
      clubid: RegistryValues.clubid,
      pcnum: RegistryValues.pcnum
    }
}

const data = getRegistryValues()
console.log(data)

→ Ссылка