Получение только допустимых значений из JSON

Я хотел бы получить только те значения, которые не являются пустыми из JSON в Javascript.

Это код:

var words = [

{word: '', phrase: 'phrase1', url: 'url.1'},
{word: 'word2', phrase: '', url: 'url.2'},
{word: '', phrase: 'phrase3', url: 'url.3'},
{word: 'word4', phrase: 'phrase4', url: ''}

];
    var factIndex = Math.floor(Math.random() * words.length);
    var randomWordsIT = words[factIndex];
    var selectWordFromRandom = randomWordsIT.word;

 alert(selectWordFromRandom);

Например, если (selectWordFromRandom.isEmpty) {random again}.

Спасибо!

1 ответ

  1. Просто используйте цикл while, пока не будет заполнена переменная selectWordFromRandom.

    var selectWordFromRandom = '';
    while (selectWordFromRandom == ''){
        var factIndex = Math.floor(Math.random() * words.length);
        var randomWordsIT = words[factIndex];
        selectWordFromRandom = randomWordsIT.word;
    }
    
    alert(selectWordFromRandom);
    

    Альтернативным способом может быть предварительная фильтрация массива для удаления всех пустых значений.