как обойти null

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

Есть проблема в цикле нужно получить данные в определенном виде USD , но нужно сделать юзеру скочуху и что бы он мог и так написать - usd для этого использую .toUpperCase(). Если без .toUpperCase() то в while достаточно и такого условия(!userData[currencySelection]) , но это все не то ( Проблема заключается. в том что при отмене все крашится и цикл не работает

   let currencySelection = '';
       do {
        currencySelection = prompt(`Введите название валюты в формате :USD, EUR, UAH, BIF, AOA`).toUpperCase();
        .toUpperCase();
         
       } while (!currencySelection && !userData[currencySelection]);
      
       console.log(`Баланс составляет: ${userData[currencySelection]} ${currencySelection}.`)

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

Автор решения: Дмитрий Орлов
let currencySelection = ''; userData = {USD:100};
   do {
    currencySelection = (prompt(`Введите название валюты в формате :USD, EUR, UAH, BIF, AOA`)||'').toUpperCase();
     
   } while (!currencySelection && !userData[currencySelection]);
  
   console.log(`Баланс составляет: ${userData[currencySelection]} ${currencySelection}.`)
→ Ссылка
Автор решения: Марсианин Джон
let currencySelection = '';
        do {
            currencySelection = prompt(`Введите название валюты в формате :USD, EUR, UAH, BIF, AOA`);
    
            if (currencySelection) {
                currencySelection = currencySelection.toUpperCase();
            }
             
           } while (!currencySelection || !userData[currencySelection]);
          
           console.log(`Баланс составляет: ${userData[currencySelection]} ${currencySelection}.`)
    
→ Ссылка